WordPressのプラグイン「SyntaxHighlighter Evolved」でタグがエスケープされる(?)

Date:2009.09.04

Author:イノマタ

Category:WordPress

Tag:, ,

WordPressのプラグイン「SyntaxHighlighter Evolved」でタグがエスケープされる(?)

そういえば、最近ぜんぜんBlogのカスタマイズをしてないので、とりあえず前回書いた記事のコードをもっとキレイに見せようかな〜。と、思い立ってコード整形用のプラグインを検索。

SyntaxHighlighter というのが、一般的に広まってるようなのでWordPress管理画面の「プラグイン」から、SyntaxHighlighter Evolved という新しいやつを入れてみる。

【2010.11.05追記】
現在は CodeColorer というプラグインを使用しています。

インストールは無事完了。
試しに、第一回目の記事のcssのコード記述を [css] 〜 [/css] で囲ってみる。

SyntaxHighlighter Evolvedを試してみた結果

SyntaxHighlighter Evolved を試してみた

お。いい感じ!
と思って第2回目の記事にも表示しているコードがたくさんあったので、適用しようとしたら……


記事のプレビューの結果…。
<?php ?>

あれ、ちょっと様子が違う…。

そこで、ソースを確認。
[php]<?php ?>[/php]

うーん。特に変なところはないはず。
気を取り直してもう一回プレビューしても結果は同じ。

SyntaxHightlighter Evolved を使用する場合は、タグをエスケープせずに使用できるってことなんだが…。
なんだかタグがエスケープされて表示されているようなんですけど…?

試しに先ほど変更した第1回の記事で試してみたら、こっちは問題無し。
どういうこと???

記述に悪いところも見つからないし、同じ事例の人も見つからない…。
そんなこんなで(たぶん)1〜2時間くらいハマっていたと思うのですが…。

なので、思い切って記事を「プレビュー」ではなく「保存」して確認してみたところ…
タグがエスケープされることなくあっさり表示されました。

えーーーー…… (;ω;)

以下推測ですが…。

WordPressで記事を作成したとき、「ビジュアル」と「HTML」のどちらかで作成することになりますが、記事の編集中に何かのタイミングで「ビジュアル」を使用して作成・保存された記事は、「記事のプレビュー」をしたときに「HTML」で再編集しても「ビジュアル」と判断されているのかも…?
(問題の起きていた記事は、SyntaxHighlighter Evolved を適用したあとは、ずっと「プレビュー」で確認していたので、すくなくとも「HTML」という判定ではなかったのかもしれません)

「HTML」で保存したあとは、タグを [php] 〜 [/php] などで囲っても内包されるコードの記号( < > など )がエスケープされることはありませんでした。

というわけで、思い切って記事を保存するのも大切…ってことでした。

【2009.10.02 加筆】

もうひとつ、タグがエスケープされてしまう条件もあったので、追記。
「投稿リビジョン」から記事を復元すると、[css] 〜 [/css] に書かれたタグが全てエスケープされてしまいますので、ご注意を…。

この記事へコメントを投稿する

※コメントはスパム対策の為、承認制となっています。あらかじめご了承ください。

 

トラックバックURL