filter機能を初期設定のまま使用すると、HTMLのコメントアウト(改行を含んだ記述の場合)が–に変換されてしまいます。
例)
<!–
ここはコメント
–>
↓変換
<!–
ここはコメント
–>
こうなると、コメントアウトがコメントアウトではなくなってしまい、困るので、次の解決方法を取りました。
<解決策1>
プラグイン等でwptexturize関数をfilterから外してしまう。
remove_filter (‘the_content’, ‘wptexturize’);
<解決策2>
wptexturize関数を書き換える。(でもコアソースをいじると、WordPressのUPDATEのときとかに困るので、あまりやりたくないです。)
formatting.php (21,22行目)
$static_characters = array_merge(array(‘—‘, ‘ — ‘, ‘–‘, ‘xn–’, ‘…’, ‘“’, ”s’, ””, ‘ ™’), $cockney);
$static_replacements = array_merge(array(‘—’, ‘ — ‘, ‘–’, ‘xn--‘, ‘…’, ‘“’, ‘’s’, ‘”’, ‘ ™’), $cockneyreplace);
↓
$static_characters = array_merge(array(‘—‘, ‘ — ‘, ‘–‘, ‘xn–’, ‘…’, ‘“’, ”s’, ””, ‘ ™’), $cockney);
$static_replacements = array_merge(array(‘—’, ‘ — ‘, ‘–‘, ‘xn--‘, ‘…’, ‘“’, ‘’s’, ‘”’, ‘ ™’), $cockneyreplace);
今回は、解決策1を用いました。
他にも↓とかある。それぞれ何やってるか、後でチェックだね。
0 : wptexturize
0 : convert_chars
0 : prepend_attachment
0 : do_shortcode
Please comment with your real name using good manners.