自前のWordpressテーマでよくあるのが、Google CDNからjQueryを読み込んでいるケースです。
特にhead部分に<script>タグで直書きされているケースが結構あります。
よくあるトラブルとしてあるのが、ダッシュボードにログイン、その状態でサイトを表示したときにWordpress同梱のjQueryが更に読み込まれてしまい表示が崩れてしまうことです。
WordPressの作法的には間違った書き方をしているので仕方ないのですが、大人の事情で変えられないこともあります。
ダッシュボードではWordpres同梱のjQueryのみを有効化しておく必要があり、ログイン状態でサイトを閲覧した時にはWordpres同梱のjQueryは読み込まないようにすれば解決します。
その方法をメモしておきます。
サイト閲覧時のみCDNのjQueryを読み込ませるカスタマイズ
CDNのjQueryをheader.phpで直接読み込ませているサイトの場合の方法です。
①CDNのjQuery読み込みをコメントアウトする
<!-- <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> -->
②functions.phpにコードを追加する
function custom_print_scripts() {
if (!is_admin()) {
//デフォルトjquery削除
wp_deregister_script('jquery');
//GoogleCDNから読み込む
wp_enqueue_script('jquery-js', '//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js' );
}
}
add_action('wp_print_scripts', 'custom_print_scripts');
is_adminはログイン状態でサイト閲覧時はfalseになります。