wordpress pc スマホ 表示切替 投稿画面
■投稿画面
[is_not_mymobile] PC表示内容 [/is_not_mymobile] [is_mymobile] SP表示内容 [/is_mymobile]
■functions.php
/*================================================
device 振り分け
================================================*/
//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;
}
}
/*****
is_iphone()、is_android()、
is_firefox_os()、is_windows_phone()、
is_blackberry()のどれかがTRUEを返すと
is_mymobile()はTRUEを返します。
つまりガラケー・スマホでの閲覧時にはTRUE、
PC・タブレットでの閲覧時にはFALSEを返します。
******/
function is_mymobile() {
if(is_iphone() || is_android() || is_firefox_os() || is_windows_phone() || is_blackberry()) {
return true;
} else {
return false;
}
}
// ショートコード [is_mymobile]ここにコンテンツ[/is_mymobile]
function func_is_mymobile($atts=NULL, $content) {
if(is_mymobile()) {
return $content;
}
}
add_shortcode('is_mymobile', 'func_is_mymobile');
function func_is_not_mymobile($atts=NULL, $content) {
if(!is_mymobile()) {
return $content;
}
}
add_shortcode('is_not_mymobile', 'func_is_not_mymobile');
■ショートコードの中にショートコード
// ショートコード [is_mymobile]ここにコンテンツ[/is_mymobile]
function func_is_mymobile($atts=NULL, $content) {
if(is_mymobile()) {
$content = do_shortcode( shortcode_unautop( $content ) );
return $content;
}
}
add_shortcode('is_mymobile', 'func_is_mymobile');
function func_is_not_mymobile($atts=NULL, $content) {
if(!is_mymobile()) {
$content = do_shortcode( shortcode_unautop( $content ) );
return $content;
}
}
add_shortcode('is_not_mymobile', 'func_is_not_mymobile');