WordPressでPCとスマホ(iPad除外)の表示を切り替える条件分岐(if文)を作成する

PHP

WordPressにはデフォルトで

<?php if ( wp_is_mobile() ) : ?>
  // モバイル用コンテンツ
<?php else: ?>
  // PC用コンテンツ
<?php endif; ?>

という条件分岐があります。
しかしこの条件分岐はタブレットもモバイルコンテンツに属しています。

このPHPをiPadのみPC用コンテンツにして使用しました。
下記にやり方を記載します。

functions.phpに追記


function is_mobile() {
  $useragents = array(
    'iPhone',          // iPhone
    'iPod',            // iPod touch
    'Android',         // 1.5+ Android
    'dream',           // Pre 1.5 Android
    'CUPCAKE',         // 1.5+ Android
    'blackberry9500',  // Storm
    'blackberry9530',  // Storm
    'blackberry9520',  // Storm v2
    'blackberry9550',  // Storm v2
    'blackberry9800',  // Torch
    'webOS',           // Palm Pre Experimental
    'incognito',       // Other iPhone browser
    'webmate'          // Other iPhone browser
  );
  $pattern = '/'.implode('|', $useragents).'/i';
  return preg_match($pattern, $_SERVER['HTTP_USER_AGENT']);
}

これで終了です。
ここの$useragents = arrayの中で切り替えるデバイスを指定しています。

出力方法

<?php if (is_mobile()) : ?>
  // スマートフォン用コンテンツ
<?php else: ?>
  // PC・タブレット用コンテンツ
<?php endif; ?>

functions.phpで条件を変更してますので、is_mobileでiPadをPCで表示する条件分岐になりました。

 

その他に色々なiPhone・iPad・Kindleのみの条件分岐もあります。
詳しくは以下のリンクを参照してください。

WordPress条件分岐、スマートフォンとブラウザ別に表示を変える方法15種

コメント

タイトルとURLをコピーしました