ショートコードでiOSとAndroidを判定させる【SANGOカスタマイズ】

はじめに

当ブログはWordpressのテーマSANGOを使用しています。

ブログを運用する上でこんなことを思うわけです。

あびゃー石川

AndroidとiOSで表示かえてえな?????

というわけで作りました。phpを1ミリも触ったことないですが。ガハハ

iPhone6とAndroidスマートフォン、iPadProにて動作確認はしましたが環境によっては異なるかもしれないのでご容赦ください。またいかなる不利益を被った場合でも責任は負えません。自己責任でお願いします。

機能概要

shortCode
[android]あたしゃAndroidだよ[/android]
[ios]オッス!オラiOS[/ios]

こんな感じに入力します。そして各機器で見てみましょう。

PC

なにも表示されません。

Android

でました。

iOS(iPadPro)

iOSも確認


PCの場合は何も表示させず、

Androidの場合は「android」で囲った中が出力され、

iOSの場合は「ios」で囲った中が出力さます。

やり方

子テーマのfunctions.phpを編集します。

かならず子テーマでやりましょう。そしてバックアップを取るのを忘れずに。

参考

WordPressで子テーマを活用して安全にカスタマイズを行う方法サルカワ

以下のコードをコピペしてください。

functions.php
/**
 * android判定ショートコード追加
 */
function isAndroid($atts , $content = null) {
	$ua = $_SERVER['HTTP_USER_AGENT'];

	if ( preg_match('/Android/ui', $ua) ) {
		$content = do_shortcode( shortcode_unautop( $content ) );
		return $content;
	}
}
add_shortcode('android', 'isAndroid');

/**
 * iOS判定ショートコード追加
 */
function isIOS($atts , $content = null) {
	$ua = $_SERVER['HTTP_USER_AGENT'];

	if ( preg_match('/iPhone|iPod|iPad/ui', $ua) ) {
		$content = do_shortcode( shortcode_unautop( $content ) );
		return $content;
	}
}
add_shortcode('ios', 'isIOS');

そして子テーマの配下にfinctions.phpを再度設置!

これだけで終了です。おそらく使えるようになったと思います。

参考

参考

ショートコード対応のカラー会話風ふきだし|SANGOコピペカスタマイズあずさんち

参考

PHPでユーザエージェントや引数からデバイスを判定Qiita

最後に

phpはプログラミングかじってればわからなくても何となくわかるかなあという感じでした。

iOSとAndroidで表示したい項目を分けたいときに使ってもらえればいいかなあと思います。

私もこのブログで使用しています!

では。