Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPBカップ
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

WordPress投稿の自動フォーマットを無効化する方法

WordPress投稿の自動書式設定を無効にしたいですか?WordPressはユーザーの利便性を考慮して設計されているため、引用符をファンシークォートに置き換えたり、一般的なテキストのクリーンアップを行うなど、テキストを自動的にフォーマットします。

しかし、これではユーザーがコードや生のテキスト、CSS/JavaScriptのコード例を表示することができません。WPBeginnerでは、開発者、デザイナー、技術的なコンテンツを共有する他のユーザーから、このWordPressの書式設定の課題に苦労しているという声をよく聞きます。

今回は、WordPress投稿の自動フォーマットを無効化する方法をご紹介します。

How to Disable Automatic Formatting in WordPress Posts

なぜWordPressの投稿フォーマットを無効化するのか?

WordPressには、テキストをサニタイズする機能がビルトインされています。この機能は引用符をファンシークォートに置き換え、HTMLCSSJavaScriptを表示するために必要なその他のタグを削除します。

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ダッシュボードからCode Snippets ” Add Snippetに移動します。次に、’カスタムコードを追加(新規スニペット)’オプションにマウスオーバーし、’スニペットを使用’ボタンをクリックします。

Add a new custom code snippet in WPCode

次に、画面に表示されるオプションのリストから、コードタイプとして「PHP Snippet」を選択する。

Select PHP Snippet as the code type

次に、スニペットのタイトルを追加することができます。これは、何のためのコードかを覚えておくのに役立つものであれば何でもかまいません。

次に、上記のコードを「コード・プレビュー」ボックスに貼り付けるだけです。

Paste the code into the WPCode plugin

最後に、スイッチを「非有効化」から「有効化」に切り替え、ページ上部の「スニペットを保存」ボタンをクリックする。

Activate and save your custom code snippet

上記のコードは、生のショートコード内でテキストが折り返されている場合、設定オプションをスキップするようにWordPressに指示します。

さて、WordPressの書式設定をスキップするには、WordPressの投稿エディタにHTMLブロックを追加する必要があります。投稿エディターの中で、フォーマットされていないテキストやコードを生のショートコードの中に追加することができます。

[raw]Unformatted code[/raw] 
Unformatted HTML block

この方法の欠点は、ブロックエディターとの相性があまりよくないことだ。HTMLブロックの中でも、予期せぬ動作をする可能性があります。

方法2.プラグインを使ってWordPressの自動書式設定を無効にする

この方法は簡単ですが、古いClassic Editorプラグインを使う必要があります。この方法の主な欠点は、将来ブロックエディタを使い始めることになった場合に混乱を招くことです。

まず、Classic Editorプラグインをインストールして有効化する必要があります。詳しくは、WordPressでブロックエディターを無効化する方法をご覧ください。

その後、Raw HTMLプラグインをインストールし、有効化する必要があります。詳しくはWordPressプラグインのインストール方法をご覧下さい。

その後、新規投稿を作成するか、既存の投稿を編集することができます。投稿の編集画面では、テキストモードに切り替えて、生のショートコードの中に書式なしのテキストを追加する必要があります。

[raw]Unformatted code[/raw] 
Unformatted classic editor

変更内容を公開または保存してプレビューし、実際に書式なしテキストを確認することができます。

WordPress投稿の自動フォーマットを無効化する方法について、この投稿がお役に立てれば幸いです。WordPressでテキストをハイライトする方法や、WordPressでおすすめのjQueryプラグインもぜひご覧ください。

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

情報開示 私たちのコンテンツは読者支援型です。これは、あなたが私たちのリンクの一部をクリックした場合、私たちはコミッションを得ることができることを意味します。 WPBeginnerの資金源 をご覧ください。3$編集プロセスをご覧ください。

アバター

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

究極のWordPressツールキット

ツールキットへの無料アクセス - すべてのプロフェッショナルが持つべきWordPress関連製品とリソースのコレクション!

Reader Interactions

7件のコメント返信を残す

  1. Phil LaNasa

    Excellent! I’ve tried plugins, but they make they work globally – all pages are affected. This is a super quick fix.

  2. Emanuele

    Nice piece of code. Made my day. Thanks for sharing.

  3. Myrddin

    Hello,

    Thanks for this tip. Kind of nice to be able to have raw scripts/html for select complex forms I am using, without having to pay attention on the remaining site.

    Michael

  4. Blair

    Im seeing this code everywhere , and I’m not so sure it’s a valid solution as it messes with a lot of other shortcodes ( if you theme is using theme ) , and it seems to add back formatting to areas in which did not have auto formatting in the first place ie : with get_the_excerpt() or something like this.

    Is there not an easier way to strip away a selected area of content to be not formatted this way?

    • Editorial Staff

      Umm, we simply use the Syntax Highlighter to display codes. Rest of formatting is ok. Unfortunately there is no real easy way.

      管理者

  5. Karan

    This still does not take out the tags from posts/pages.
    Thanks.

  6. FAQPAL

    Excellent, this is definitely one frustrating part of Wordpress.

返信を残す

コメントありがとうございます。すべてのコメントは私たちのコメントポリシーに従ってモデレートされ、あなたのメールアドレスが公開されることはありませんのでご留意ください。名前欄にキーワードを使用しないでください。個人的で有意義な会話をしましょう。