php開発日記

PHP開発で日々発生した対応などの備忘録

wordpressにてjavascriptの「TypeError:」がでる

wordpressにてjavascriptの「TypeError:」がでる

jqueryの宣言と wp_head() の宣言が重なるとでる。

 

1. typeError は jqueryの宣言が重複するとでる

2. wp_headはjqueryの宣言を出力するので既存でjqueryを宣言していたら重複してしまう。

 

対処:wp_deregister_script('jquery')jquery宣言が勝手に出力されるのを抑制する。

 


    <?php wp_deregister_script('jquery'); //この宣言でjqueryの出力を抑制する ?>
    <?php wp_head(); ?-->
<script src="//ajax.googleapis.com/ajax/libs/jquery/x.x.x/jquery.min.js">

 functions.phpに記述も可能


function my_delete_local_jquery() {
    wp_deregister_script('jquery');
}
add_action( 'wp_enqueue_scripts', 'my_delete_local_jquery' );

Javascriptで端末により処理を分ける

javascript にて userAgentにより処理をわける。

    $(function () {
    var ua = navigator.userAgent;
    if (ua.indexOf('iPhone') > 0 || ua.indexOf('iPod') > 0 || ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0) {
      // モバイル
    } else if (ua.indexOf('iPad') > 0 || ua.indexOf('Android') > 0) {
      // タブレット
    } else {
      // PC等
    }
});