wordpressを利用していると、色んなテーマがあり非常に便利な反面
殆どのテーマが最近はレスポンシブに対応してしまっている、ということは
ある意味デメリットでもあるでしょう。
とくに企業用にカスタマイズされたデザインが、レスポンシブで表示された表紙に
レイアウトは予想以上にチープに見えてしまう、といった事も多いです。
今回はwp_is_mobileの関数を利用して、レスポンシブを無効にする方法を紹介しましょう
wp_is_mobile関数はモバイル端末(タブレットを含む)でのアクセス時にはTRUEを、そしてPCでのアクセスの時はFALSEを返します
しかしこの状況ですと、レスポンシブが効いたままになってしまうので、以下の用に定義を行います。
//iphoneまたはipodで閲覧されているかどうかを判定
function is_iphone()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘iPhone’)!== false||
strpos($ua, ‘iPod’)!== false
)
{
return true;
}
else
{
return false;
}
}
//androidスマートフォンで閲覧されているかどうかを判定する関数
//「mobile」文字列の有無を見ることで、タブレット端末をfalse判定
function is_android()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘Android’)!== false&&strpos($ua, ‘Mobile’)!== false
)
{
return true;
}
else
{
return false;
}
}
//Mozillaが開発するスマートフォン用OS「Firefox OS」の判定関数
function is_firefox_os()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘Android’)=== false&&strpos($ua, ‘Firefox’)!== false&&strpos($ua, ‘Mobile’)!== false
)
{
return true;
}
else
{
return false;
}
}
//Windows Phoneで閲覧されているかどうかを判定する関数
//「mobile」文字列の有無を確認することで、タブレット端末をfalse判定
function is_windows_phone()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘Windows’)!== false&&strpos($ua, ‘Phone’)!== false
)
{
return true;
}
else
{
return false;
}
}
//BlackBerryで閲覧されているかどうかを判定する関数
function is_blackberry()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘BlackBerry’)!== false
)
{
return true;
}
else
{
return false;
}
}
//ガラケーで閲覧されているかどうか判定する関数
function is_ktai()
{
$ua = $_SERVER[‘HTTP_USER_AGENT’];
if(
strpos($ua, ‘DoCoMo’)!== false||
strpos($ua, ‘KDDI’)!== false||
strpos($ua, ‘UP.Browser’)!== false||
strpos($ua, ‘MOT-‘)!== false||
strpos($ua, ‘J-PHONE’)!== false||
strpos($ua, ‘WILLCOM’)!== false||
strpos($ua, ‘Vodafone’)!== false||
strpos($ua, ‘SoftBank’)!== false
)
{
return false;
}
else
{
return false;
}
}
/*****
is_ktai()、is_iphone()、is_android()、
is_firefox_os()、is_windows_phone()、
is_blackberry()のどれかがTRUEを返すと
is_mymobile()はTRUEを返します。
つまりガラケー・スマホでの閲覧時にはTRUE、
PC・タブレットでの閲覧時にはFALSEを返します。
******/
function is_mymobile()
{
if(
is_ktai()||
is_iphone()||
is_android()||
is_firefox_os()||
is_windows_phone()||
is_blackberry()
)
{
return false;
}
else
{
return false;
}
}
上記の内容をfunction.phpに記載しましょう。これで問題無く、スマホでも閲覧時に、PCと同じレイアウトが表示されます。
※参考サイト
Web Shufu