WPの開発で $ is not a function が表示される問題:jQuery

jQuery のロゴ

jQuery のショートハンド(速記法)としてよく利用される $ ですが、WordPress で開発していると、 $ is not a function なるエラーが発生していることがあります。

この問題には概ね 2 つの原因があり、1 つは、WordPress がショートハンドの衝突を回避するために、 jQuery のショートハンドを$ としていないため、もう 1 つは、そもそも jQuery の読み込み(定義)よりも前に、$ が読み込まれているためです。

前者は WordPress の仕様ですので、$ のコードを jQuery に書き換えればよいです。 例えば $.ajax のような表記を、jQuery.ajax のように書き換えることになります。

$` を jQuery のショートハンドとしてコードを書いているにも関わらず問題が発生しているか、 あるいは $jQuery に書き換えても問題が継続するときは、jQuery の読み込み(定義)よりも先に、 $jQuery を使ったコードを定義していないか確認する必要があります。

ブラウザのデバッガを使うなり、ソースコードを確認するなどして確認してみてください。