syntaxhighter evovled を使ってたところが文字化けしてたわけです

最終更新が2020年8月みたいで、どうもお久しぶりなんてレベルではないけれども、最近は公開せずとものんびりと昔の記事を更新はしていたわけです。
コードを表示するところは「Syntaxhighter evovled」というプラグインを使っていたのだが、どうやら「Syntaxhighter evovled」で表示しているコードの一部で文字化けしているところを見つけたわけです。
もしかすると [c]とか、[php]で書いているところがたくさん文字化けしまくっている可能性があるわけです。うぎゃあ。

この件について、wordpress.orgのサポートにも載っていた。4年前の記事だったが!古い。
https://wordpress.org/support/topic/ampersand-character/

Googleでも本件について調べに調べに調べて見ると、どうやらこのコードを書けばいいのよーってみたいな感じの定石のようなコードは見つかったので、この流行っているらしいやつを使おう。
それはこんな感じのコードだった。

function kagg_syntaxhighlighter_precode( $code, $atts, $tag ) {
	if ( 'code' === $tag ) {
		$code = wp_specialchars_decode( $code );
	}
	return $code;
}
add_filter( 'syntaxhighlighter_precode', 'kagg_syntaxhighlighter_precode', 10, 3 );

「syntaxhigher evoled」の設定画面では、ショートコードパラメータとして、[c][/c] みたいな書き方を例に載せていてご多分に漏れずこのような書き方をしていたわけで。
なんだけれども この wordperss.org のコードをこのまま使おうと思うと、[code lang=”c”][/code] みたいな感じで書かないといけないぜご安全にってことらしい。

「syntaxhigher evoled」の設定画面で引数指定のやや後ろくらいに例があるものの、この形式で書けば良さそうでしたっていう説明が書かれたサイトは、ざっくりと調べた中にはなかったりしてるのでここで書いておいても良いのかななんてな。

他にもバケがないかネットサーフィンして過去のコードを見てると、大丈夫なところもあればあかんところもあるという。
あと、プラグインもいつの間にやらまともに動かなくなっているところもあったりして、いくつかのプラグインは自分で書いて設置したんだな。
とりあえずは一応ちゃんと動いておるようです。


投稿者: Takeken

インターネット利用者のITリテラシーを向上したいという設定の2次元キャラです。 サーバー弄りからプログラミングまで手を付けた自称エッセイストなたけけんの物語。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です