2014-11-26

WordPressのエディタ「TinyMCE」の実体参照を無効化する

前置き

現在、WordPressの記事編集にはデフォルトでTinyMCEエディタが起動するようになっています。

このTinyMCEエディタ、 ビジュアル モードから テキスト モードに切り替えた時に特殊文字を実体参照に変換してくれます。

この挙動自体はありがたいんですが、コードを載せる場合は邪魔になることがしばしばあります。

通常であれば テキスト モードに記述したHTMLタグは ビジュアル モードでは表示されませんが、 <pre> タグ内に記載した特殊文字は ビジュアル モードでも表示されます。

これを再度 テキスト モードに切り替えると実体参照に変換されてしまうというわけです。

<pre> タグ内に記述された実体参照はブラウザでは特殊文字に変換されません。

これでは困るので、そもそも実体参照への変換機能を切ってしまおうというわけです。

前置きが長くなりました。

どうすればいいか

wp-include/js/tinymce/tinymce.min.js を開いて &gt; を検索しましょう。

o={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"}

という箇所があるのでここから変換されたくない文字を除外します。 私はタグ記号だけで良かったので以下のようになりました。

o={'"':"&quot;","'":"&#39;","&":"&amp;"}

以上っす