[WordPress] 投稿記事などで JavaScript を埋め込んで Pタグが自動挿入されてしまう

  • このエントリーをはてなブックマークに追加
  • Pocket

attention この記事は2年以上前の投稿になります。
記載された情報が古くなっている可能性がございますので十分ご注意ください。

埋め込んだ JavaScript が動かないので、出力された HTML を表示させてみるとPタグで囲われてしまっていることがあります。

プラグインやテーマ側で「Pタグの自動挿入」の機能を無効化するのも方法の1つかと思いますが、この機能も便利だと思っているユーザーがいるからこそ標準で付いているのです。
(記事等に JavaScript 書こうとすることがイレギュラーということです)

また、この自動挿入をいきなりOFFにしてしまうと、今まで記載した大部分の投稿記事で影響が出ます。
※wpautop()を無効化しなくて filter等で置換処理(Pタグの除去)をしているものは同様に他への影響が出ます。

ここでは「Pタグの自動挿入」の機能が有効な状態での回避方法を紹介しておきます。
HTMLに綺麗ではなくなってしまいますが、script タグの外側を div タグで囲ってしまいましょう。

<div>
<script type="text/javascript">
<JavaScript コード>
</script>
</div>

上記でも、いくつか注意点があります。

  • JavaScript コード内でdiv タグを使う場合は注意する
    >※div タグの直前に改行を挿入されます
  • JavaScript コード内では空行は使わない
    >※空行は「</p>\n<p>」で置換されます
  •  
     
     
     
     
    また、投稿記事内でPHPコードを動作させるプラグインを利用している場合なら
    PHPに直接 JavaScript を出力させることで回避も可能です。

    <?php
    echo <<<EOS
    <script type="text/javascript">
    <JavaScript コード>
    </script>
    EOS;
    ?>
    
    ネット集客を加速させるWebサイトをWordPressで作る方法
    WordPress対応 PHPファイル 難読化ツール

    ご訪問ありがとうございます。
    参考になりましたら『いいね!』もお願いします。

    ITの活用情報を毎週お届けする無料メルマガに是非ご登録ください。

    閉じる

    ご意見・ご感想をお待ちしております。

    いただいた情報は一般公開されません。(入力いただいたメールアドレスにてご返信させていただきます)
    また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

    内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。