WordPressの記事内でJavaScriptを動かす

公開日: : 最終更新日:2014/08/14 JavaScript/jQuery, WordPress

スポンサーリンク

WordPressでは厄介なことにJavaScriptが動かない場合があります。この記事では動かないJavaScriptをどうやって動かすか検証しました。ちなみに、自分の調べたときのWordPressのバージョンは3.91です。

WordPressでJavaScriptを動かす方法

ここから本題なのですが、WordPressの記事内でJavaScriptを動かす手法にプラグインを導入する方法とそうしない方法があるようですのでそれぞれ調べました。

プラグインを使わない方法

案外何もプラグインを導入しなくても動くものは動きます。このことはJavaScript製のブログパーツが普通に動くのをみるとわかります。

スクリプトが動かない場合としてはWordPress側で自動で挿入される<p>~</p>タグが原因かと思います。

このタグが非常にハタ迷惑なのですが、これが挿入されるタイミングとして考えられるのが改行してスペースが出てきたときです。
その他にも<div>タグをスクリプトに含めると変なところで改行してしまう場合があります。例えばDOMを作成するときに$(“<div>”)などとするとうまくいかないことがありました。他のタグでもこういった現象が起きるのではないかと思います。

なので、ベストなのは記事の方にソースは書かないで、外部スクリプトとして保存して呼び出すというのが無難かと思います。

inline-javascriptを使う方法

inline-javascriptというプラグインを使用するとスクリプト部分を[inline]~[/inline]で囲むだけでスクリプトが動くようになります。ただし、このプラグインを使うとWordPressのバージョンによっては文章のレイアウトが多少崩れるといった欠点もあるため、その辺については注意が必要です。

また、このinline-javascriptのプラグインでも上記同様にDIVタグなどを使用するとうまくいかないといった症状が見られましたので使う際は気を付けてください。

Custom CSS and JSを使う方法

プラグイン「Custom CSS and JS」では記事作成ページのカスタムフィールドからCSSやJavaScriptを記事に追加することができます。ただし、いちいちカスタムフィールドに別途記述する必要があるため多少面倒ではあります。

CSS & JavaScript Toolboxを使う方法

上記のCustom CSS and JSはカスタムフィールドにソースを追加する形のものでしたが、こちらはエディタ形式でソースを変更することができて、かつソースをそのまま一括管理、どこの記事で、もしくは全体でそのスクリプトを有効にするかを簡単に決定・変更することができます。正直一番使いやすいと思います。

cssjstoolbox

このプラグインをインストールすると下図のように左側のメニューバーに『CSS & javascript Toolbox』という項目が出てきてJS・CSSだけでなくPHPやHTMLのソースコードを追加・編集・管理することができます。右の赤枠部分で編集しているソースをどこの記事に反映させるか決めることができます。

最後に

プラグインも便利ですが気をつけさえすればスクリプトはキチンと動いてくれるので何も導入しなくても意外と大丈夫ですので、必要な場合に応じてインストールするもしくは利用する方針でいいかと思います。

スポンサーリンク
Amazon
  • このエントリーをはてなブックマークに追加

関連記事

AmazonのランキングRSSから画像リンクを作る

Amazon RSS Amazonでいい感じのRSSが無いかと探していたのですが実は本家に素晴らし

記事を読む

【javascript】RSSを読み込んで表示させる【Google Feed API】

jQueryで簡単にRSSフィードを表示させる方法としてGoogleFeedAPIを利用するというの

記事を読む

【jQuery/javascript】はてなボタンを動的に設置する

はてなブックマークのボタンをページの読み込みが終わった後にjavascript(jQuery)で追加

記事を読む

YoutubeのURLリンクを外部プレイヤーのものに正規表現で置換する

Youtubeのアドレスを正規表現を使って抽出して外部プレイヤーのフレームに変換・置換するスクリプト

記事を読む

【jQuery UI】タブをクリックしたときのイベントでselectが使えない

jQuery UIは1.10のバージョンではタブをクリックしたときのイベントの名前が変わっているよう

記事を読む

スクレイピングをサポートしてくれるAPI【kimono】

kimonoというスクレイピングをAPI化してくれるという素晴らしいサービスがあります。

記事を読む

jQueryで要素にappendとafterを使って追加する

jqueryのappendは要素の末尾に指定要素を追加し、afterは要素の後に指定要素を加えます。

記事を読む

javascriptでチェックボックスを一括で変更する方法

チェックボックスのチェックに一つ一つチェックを入れていくのは非常に手間がかかるのでjavascrip

記事を読む

【jQuery UI】タブの初期状態を選択するとエラーがでて失敗する

jQuery UIでタブをプログラム側から選択させるには以下のようなコードを書けばいい…といったこと

記事を読む

【javascript】RGB⇔カラーコード変換ライブラリ

RGBをカラーコードに変換、または、カラーコードをRGBに変換したい場合が出てきたのでどういうも

記事を読む

【DeepLearning】物体検出手法のSSD(Keras版)を試す (Ubuntu14.04)

はやりのディープラーニングの物体検出手法の一つであるSSDのサンプルを

【Laravel5】既存のDBからデータを取得して表示する

はじめに 今まで作ったWebサイトをLaravel5で見れるようにし

【C++/OpenCV】cv::Matの画像にインパルスノイズを付加する

OpenCVで画像にノイズを付け足したいと思って調べたところ、Pyth

Intel Corei7-7700TでHTC Viveの動作確認

はじめに HTC ViveというVRヘッドセットで遊んでみたのでその

【Python】フォルダ内のカッコ付き数字ファイルを一括でリネームするスクリプト

はじめに タイトルどおりなのですが、指定フォルダ内のファイルのファイ

OpenCV3.1のTracking APIでトラッキングを試す

はじめに 先日OpenCV3.1をopencv_contrib付きで

パソコンを複数台使う際便利なツール

はじめに 先日、機械学習用にGPUを積んだBTOパソコンを購入しまし

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑