parudou
parudou
parudou
更新日:2018/10/09

<2018年最新>ワードプレスでパソコンとスマホで表示を振り分ける方法

もはや出尽くしている感があるのですが、
「どのやり方が正しいのか?」というのは意外とわからない。

今一度、自分のやり方が合っているかどうか、確認してほしい。
特に「Android」の部分。

振り分ける設定

functions.phpに下記を追加します。


<?php
function is_mobile(){
$useragents = array(
'iPhone', // iPhone
'iPod', // iPod touch
'Android.*Mobile', // 1.5+ Android *** Only mobile
'Windows.*Phone', // *** Windows Phone
'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
'Mobile.*Firefox', // Firefox OS
'Opera Mini', // Opera Mini Browser
'BB10', // BlackBerry 10
);
$pattern = '/'.implode('|', $useragents).'/i';
return preg_match($pattern, $_SERVER['HTTP_USER_AGENT']);
}
?>

次に、振り分けたい部分にこう書きます。
これはいつものやり方。


//やり方1
<?php if(is_mobile()) {
スマホ向けの表示を書く
} else {
パソコン向けの表示を書く
} ?>

//やり方2
<?php if(is_mobile()) : ?>
スマホ向けの表示を書く
<?php else: ?>
パソコン向けの表示を書く
<?php endif; ?>

//このようにパソコン向け表示は省いてもいい
<?php if(is_mobile()) : ?>
スマホ向けの表示を書く
<?php endif; ?>

これらのコードは他のサイトのコピペですが、
自分で調べてもこれ以上の修正ができないので、そのままです。

最新のユーザーエージェントが反映されており、
かつ「’Android.*Mobile’」の指定が正しい。

これがただ「’Android’」と書いてあるコードは間違っています。
それだとAndroidのタブレット端末やTVも含んでしまう。

ユーザーエージェントでの判断なので、来年にはまた変わっている可能性があります。
定期的に最新情報をチェックするようにしておこう。

是非ご感想・ご指摘等をください。

プロフィール

管理人:parudou
単なるWEBサイト作成マニアです。
底辺法人アフィリエイター。
Twitterはこちら

日記はパルどうSEOブログ

Copyright (c) parudou All Rights Reserved.