WordPressで記号などが自動変換されるのを防ぐ方法

※記事内に商品プロモーションを含む場合があります

先日、こんな記事を書きました。
CentOS7でLet’s Encryptを使う方法と、自動更新

CentOSで無料で使えるLet’s Encryptを使うのに
コマンドを使いますが、使用するコマンドも載っけていました。

後日、このブログの証明書も取得しておこうと思い
取得しようとすると失敗します。

調べた結果、コマンドオプションのハイフン2つの所が
1つに変換されていました。

私は言いたい

ガルパン劇場版で河嶋桃が言い放った、余計なことすんなー

余計なことすんなー!と

WordPress 4.0.0から実装された、余計な機能

その機能は、wptexturize関数が行なっていて特殊記号などの
自動変換を行ってくれます。

特殊記号だけなら良いんですけど。

半角英数のハイフンが3つあっても、2つあっても。
スペースで囲まれてても全てenダッシュに変換してくれます。
詳しい自動変換の内容はこちらから確認出来ます。
関数リファレンス/wptexturize

まぁ、文章だけ書いているブログなら統一感が出て良いのでしょう。
このブログはコードやコマンドを載せてるいるので、余計なことすんなー!と言いたい。

wptexturize関数を無効化する方法

今までの全ての記事を直すのは無理なのでwptexturize関数
を無効化して自動変換をストップします。

自動変換は表示時に行っているので
記事は元の状態のままです。

自動変換を切って、キャッシュなどをクリアすれば
元の状態で表示される様になります。

方法

テーマ内にあるfunctions.phpの最終行の?>の上の行に
に以下のコードを追加します。

//—————————————————————————
//記号などの自動変換を防ぐ wptexturize無効化
//—————————————————————————
add_filter( ‘run_wptexturize’, ‘__return_false’ );

コードだけだと、後々何の効果のあるコードなのか分からなくなるので
コメントを入れておくと分かりやすいと思います。

正確にはコードでは無く、アクションフックですけどね。

functions.phpはテーマの根幹となるファイルなので、
編集ミスがあるとブログが真っ白になるなどの事態が発生します。

編集前には必ずバックアップを取り、
万が一異常が発生したら元の状態に戻して下さい。

参考にしたサイト

特殊文字が自動変換されるのを回避する方法。