目次
WordPressでデフォルトで読み込まれてしまうwp-includes内のjqueryを消す方法とGoogle APIから読み込ませる方法をご紹介します。
ん?デフォルトのjquery.jsはなにが悪い?
デフォルトで読み込まれるjquery.jsはうざい
<head>で wp_head() を記述すると
下記のような一行が追記され、jquery.js デフォルトで読み込まれてしまいます。
こんなパスのはず。
[html]<script type="text/javascript" src="http://example.com/wp/wp-includes/js/jquery/jquery.js"></script><br />[/html]
このwp-includes内のjqueryが、
カスタマイズの上で邪魔になる場合があるかと思います。
具体的には、
下記のような問題がよくあります。
・jquery.jsを2回読み込んでしまう・・・
・jquery.jsをGoogle APIから読み込みたいのに・・・
・jquery.jsのバージョンを変更したいのに・・・
・jquery.jsの記述場所を選べないので、読み込み順が不都合・・・。
・jquery依存の他のJavaScriptとの相性が悪い(動かない)
・WordPressプラグインとの相性が悪い(動かない)
あ〜。
どれもうっとうしい問題ですね・・・!
(余談)デフォルトのjquery.jsが他のJavaScriptやプラグインと相性が悪い理由
余談ですが、
デフォルトで読み込まれてしまうwp-includes内のjquery.jsが、
他のJavaScriptやプラグインと相性が悪いのは・・・
noConflict
の記述があることが原因です。
この詳細はとりあえずこんな気のテーマとは関係ないので、
詳しくはかちびと.netさんのブログ記事にて。
参考URL
WordPressでjQueryを使うときに、問題なく動作させる為の基礎知識やTipsと、動かない場合の対処例 – かちびと.net
さて、ここからは本題です!
ベストな解決策
jquery.jsは wp-includes内からではなくGoogle APIから読み込もう
うん、記事のタイトルですでにバレてましたね。笑
この方法はWordPress攻略本さんから引用しています。
参考URL
wp_head()で展開されるjqueryのリンクをgoogleapiから読み込ませる方法 | WordPress攻略本
wp_head()よりも上に、下記のphpコードを記述します。
[php]wp_deregister_script( ‘jquery’ );
wp_enqueue_script(‘jquery’,’http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js’);
[/php]
1行目で「デフォルトのjQueryを削除」して
2行目で「Google API のjQueryを読み込み」しています。
jQueryのバージョンはお好みです。
はい。これで完ぺき!快適なjqueryライフを!
(余談)wp_head()は絶対消してはいけない!
絶対!ではないけど、消してはいけません!
理由は、消すとかえってさらなる問題が生じるからです。
具体的には下記のような問題が生じます!
・WordPressプラグインが動かない・・・
・RSSフィードURLなど、デフォルトで自動追記してくれる記述が消える・・・
もっと嫌でしょ!!笑
だからwp_head()はくれぐれも消さないようにしてください。
〆(シメ)
以上!
wp-includesのjqueryを消す方法&Google APIから読み込ませる方法 でした!
参考URL
wp_head()で展開されるjqueryのリンクをgoogleapiから読み込ませる方法 | WordPress攻略本