Posts tagged as WordPress

[WordPress]WordPressとSyntaxHighlighter 2.0とAS用定義

ブログのSyntaxHighlighterとWordPressのアップデートをさぼってたので、やってみたらつまずいたさ。
SyntaxHighlighter( ? → 2.0 )
WordPress( 2.7 → 2.7.1 )

 

まずは、SyntaxHighlighterのアップデートから。

ActionScript 3.0のシンタックスを入れてあるので、念のため「shBrushAS3.js」と「syntaxhighlighter.php」をバックアップしといて、プラグインの自動アップデート。

結果、SyntaxHighlighterが2.0となって、プラグインの名前が「SyntaxHighlighter Evolved」に変わった?

Viper007Bond.com » My WordPress Plugins » SyntaxHighlighter Evolved
http://www.viper007bond.com/wordpress-plugins/syntaxhighlighter/

 

で、syntaxhighlighter.phpにActionScriptの設定を書き加えようとしたら、中身が全然変わってる。

他の言語を参考にAS用の設定を書き加えてみたけど、なんか[code language="actionscript"]〜[/code]としてるところで、actionscriptって定義がないよってJavaScriptのアラートがでるようになってしまった。

原因は古いままのAS用のシンタックス定義「shBrushAS3.js」では駄目。で、SyntaxHighlighter 2.0用にアップデートされた「shBrushAS3.js」をダウンロードして入れ直し。

AS3 Syntax Highlighting (with SyntaxHighlighter 2.0)
http://yourpalmark.com/2009/02/17/as3-syntax-highlighting-with-syntaxhighlighter-20/

 

ということで、syntaxhighlighter.phpはこんな感じ。

syntaxhighlighter.phpの60行目あたりに付け足し。「shBrushAS3.js」の適用。

wp_register_script( 'syntaxhighlighter-brush-xml',        plugins_url('/syntaxhighlighter/syntaxhighlighter/scripts/shBrushXml.js'),        array('syntaxhighlighter-core'), $this->agshver );

wp_register_script( 'syntaxhighlighter-brush-xml',        plugins_url('/syntaxhighlighter/syntaxhighlighter/scripts/shBrushXml.js'),        array('syntaxhighlighter-core'), $this->agshver );
wp_register_script( 'syntaxhighlighter-brush-as3',        plugins_url('/syntaxhighlighter/syntaxhighlighter/scripts/shBrushAS3.js'),        array('syntaxhighlighter-core'), $this->agshver );

 

syntaxhighlighter.phpの120行目あたりに付け足し。[code language="actionscript"]なところ。

'html' => 'xml',
'xhtml' => 'xml',

'html' => 'xml',
'xhtml' => 'xml',
'actionscript' => 'as3',
'as' => 'as3',

 

これでAS用を適用した部分はちゃんと表示されるようになったんだけど、[code language="actionscript"]を使ってる過去記事の編集画面で「htmlspecialchars_decode()なんたらかんたら」の警告がでて、まったくテキストの編集が全くできなくなってしまった。

 

じゃあ、WordPressをアップデートしたら直るんかなと2.7.1にしてみた。

そしたら、「htmlspecialchars_decode()なんたらかんたら」の警告は相変わらずでるけど、テキスト編集部分は表示されるようになって、まぁ良いかと思ったけど、調べてみたらmodoki.orgさんとこで解決法を発見。

[WordPress]htmlspecialchars_decode()エラーで投稿できない | modoki.org
http://modoki.org/blog/archives/42

 

WordPressのバグらしく「wp-includes/compat.php」の104行目を

if ( !is_scalar( $string ) ) {

 if ( !is_scalar( $str ) ) {

に書き直せってさ。

 

そしたら、「htmlspecialchars_decode()なんたらかんたら」でなくなったー!。
万事解決。すっきり満足。

 

Related posts

[WordPress]WordPressをアップデート

WordPress MEからWordPress 日本語版に変えました。
ME版のバージョン2.1.3からWordPress 日本語版の2.3.2にアップグレード。

 

ちなみに、二つの違いは、WordPressのサイトにまとまっています。
WordPress | 日本語 » 日本語版と ME 版について
http://ja.wordpress.org/wordpress-ja-and-me/

 

まずはもろもろのバックアップを取りました。
次にプラグインとかテーマもこれを機会に整理しようと思って、WordPress MEのファイル類を全消しし、WordPress 日本語版をサーバーにアップ。

それから、バックアップしたwp-config.php もアップし、アップグレードを開始しました。
アップグレードの操作自体はポンポンと、ボタンを2・3回押す程度。

WordPressの2.3ではデータベースの構造が変更になるということでしたが、その辺りもうまく行ったようで、無事WordPressの管理画面を再び目にすることができました。。

 

しかし・・・

WordPress 日本語版を入れたのに、全く日本語になっていませんでした。
日本語リソースはあるのに、おかしいよ。

 

で、なんでかなぁと思って「日本語リソースのインストール」のページを除いてみました。

WordPress | 日本語 » 日本語リソースのインストール
http://ja.wordpress.org/install-ja/

WordPress ルート直下の wp-config.php ファイルを開き、「WPLANG」の箇所を次のように設定
* define (’WPLANG’, ‘ja’);

 

おやおやと思って、WordPress MEのときのwp-config.php を見てみると、

define ('WPLANG', 'ja_UTF');

となっていたので、

define ('WPLANG', 'ja');

に変更したら、無事日本語化されました。

 

バンザイ!

 

Related posts