WordPress投稿の自動フォーマットを無効にしたいですか? WordPressは使いやすさを重視して設計されており、テキストを自動的にフォーマットします。これには、引用符を装飾的な引用符に置き換えたり、一般的なテキストのクリーニングを行ったりすることが含まれます。
しかし、これではユーザーがコード、プレーンテキスト、CSS/JavaScriptコードの例を表示できなくなります。WPBeginnerでは、開発者、デザイナー、その他の技術的なコンテンツを共有するユーザーから、このWordPressのフォーマットの課題に苦労しているという声を頻繁に聞いています。
この記事では、WordPressの投稿で自動フォーマットを無効にする方法を説明します。

WordPress投稿でWordPressのフォーマットを無効にする理由
WordPressには、テキストをサニタイズする組み込み機能があります。この機能は、引用符を装飾的な引用符に置き換え、表示に必要な可能性のあるその他のタグを削除します。HTML、CSS、またはJavaScript。
WordPressでコードを簡単に表示するには、デフォルトのフォーマットをスキップできる複数の方法があります。それらは、WordPressでコードを表示する方法に関する記事で確認できます。
しかし、一部の上級ユーザーは、WordPressの自動フォーマットを完全に無効にしたい場合があります。これにより、WordPressのフォーマットチェックを簡単にスキップし、必要に応じてウェブサイトに生のテキストを表示できます。
それでは、WordPressサイトで自動フォーマットを簡単に無効にする方法を見ていきましょう。ニーズに最適な方法を選べるように、2つの方法を紹介します。
方法1. WordPressで自動フォーマットを手動で無効にする
この方法では、カスタムコードをWordPressウェブサイトに追加する必要があります。以前にこれを実行したことがない場合は、WordPressにカスタムコードスニペットをコピー&ペーストする方法に関するガイドをご覧ください。
まず、次のコードをテーマのfunctions.phpファイルまたはコードスニペットプラグインに貼り付ける必要があります。
function my_formatter($content) {
$new_content = '';
$pattern_full = '{([raw].*?[/raw])}is';
$pattern_contents = '{[raw](.*?)[/raw]}is';
$pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach ($pieces as $piece) {
if (preg_match($pattern_contents, $piece, $matches)) {
$new_content .= $matches[1];
} else {
$new_content .= wptexturize(wpautop($piece));
}
}
return $new_content;
}
remove_filter('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');
add_filter('the_content', 'my_formatter', 99);
このコードは、WPCodeプラグインを使用して追加することをお勧めします。テーマファイルを編集せずにカスタムコードをWordPressに追加する最も安全で簡単な方法です。
開始するには、無料のWPCodeプラグインをインストールして有効化する必要があります。ヘルプが必要な場合は、WordPressプラグインのインストール方法に関するこのガイドを参照してください。
プラグインを有効化したら、WordPressダッシュボードから コードスニペット » スニペットを追加 に移動します。
次に、「カスタムコードを追加(新規スニペット)」オプションにマウスカーソルを合わせ、「+ カスタムスニペットを追加」ボタンをクリックします。

その後、画面に表示されるオプションのリストからコードタイプとして「PHPスニペット」を選択する必要があります。

次に、スニペットのタイトルを追加できます。これは、コードが何のためのものかを思い出すのに役立つものであれば何でも構いません。
次に、上記のコードを「コードプレビュー」ボックスに貼り付けるだけです。

最後に、スイッチを「非アクティブ」から「アクティブ」に切り替え、「スニペットを保存」ボタンをページの上部でクリックします。

上記のコードは、テキストがショートコードで囲まれている場合、WordPressにフォーマットオプションをスキップするように指示します。
さて、WordPress のフォーマットをスキップするには、WordPress の投稿エディターに HTML ブロックを追加する必要があります。投稿エディター内で、生のショートコードの中にフォーマットされていないテキストまたはコードを追加できます。
[raw]Unformatted code[/raw]

この方法の欠点は、ブロックエディターではあまりうまく機能しないことです。HTMLブロック内でも、予期しない動作をする可能性があります。
WordPressで自動フォーマットを無効にする方法:プラグインを使用する(方法2)
この方法はより簡単ですが、古いClassic Editorプラグインを使用する必要があります。このアプローチの主な欠点は、将来ブロックエディターの使用を開始した場合に混乱が生じる可能性があることです。
まず、Classic Editor プラグインをインストールして有効化する必要があります。詳細については、WordPressでブロックエディターを無効にしてクラシックエディターを維持する方法のガイドをご覧ください。
その後、Raw HTML プラグインをインストールして有効化する必要があります。詳細については、WordPress プラグインのインストール方法に関するステップバイステップガイドをご覧ください。
その後、新しい投稿を作成するか、既存の投稿を編集できます。投稿編集画面で、テキストモードに切り替え、生のショートコード内にフォーマットされていないテキストを追加する必要があります。
[raw]Unformatted code[/raw]

変更を公開または保存し、プレビューして、フォーマットされていないテキストがどのように機能するかを確認できるようになりました。
この記事がお役に立ち、WordPressの投稿で自動フォーマットを無効にする方法を学べたことを願っています。また、WordPressでテキストをハイライトする方法に関するガイドや、最高のWordPress jQueryプラグインの選択肢もご覧ください。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。

Phil LaNasa
素晴らしい!プラグインを試しましたが、それらはグローバルに機能し、すべてのページに影響します。これは非常に迅速な修正です。
Emanuele
素晴らしいコードですね。おかげで一日が明るくなりました。共有ありがとうございます。
Myrddin
Hello,
このヒントをありがとうございます。残りのサイトに注意を払う必要なく、使用しているいくつかの複雑なフォームのために生のスクリプト/HTMLを持てるのは、かなり良いことです。
マイケル
ブレア
このコードがあちこちで見られますが、多くの他のショートコード(テーマが使用している場合)を台無しにし、そもそも自動フォーマットされていなかった箇所(get_the_excerpt() など)にフォーマットを戻してしまうため、有効な解決策なのかどうか確信が持てません。
このようにフォーマットされないように、選択したコンテンツ領域を簡単に削除する方法はありませんか?
編集スタッフ
うーん、コードを表示するためにシンタックスハイライターを使用するだけです。残りのフォーマットは問題ありません。残念ながら、簡単な方法はありません。
管理者
Karan
これはまだ投稿/ページからタグを削除しません。
ありがとうございます。
FAQPAL
素晴らしい、これは間違いなく WordPress のイライラする部分の1つです。