世に出してからもちょくちょくメンテナンスをしております。
この前、twitterのcolorageアカウントで、”公開しました”的なことを呟いてみたのですが、
ハッと気付いた。
だいたいtwitterってスマホで見てるわ私。
ということでスマホ用画面を作ることとしました。(安直)
このサイトは文字より画像メインでニュース性のあるものでもなし
スマホはいーやとスルーしてた次第です・・(汗
・・ということで、
ユーザーエージェントを呼んで画面を出し分けるのは
jsとか.htaccessとかいろいろやり方はあるけど
phpサイトなので何も考えずにphpで書く。
$_SERVER[‘HTTP_USER_AGENT’]
を使用します。
$ua = strtolower($_SERVER[‘HTTP_USER_AGENT’]);
if((stripos($ua,’iPhone’) !== false)or(stripos($ua,’Android’) !== false)) {
header(‘Location: sp/index.php’);
exit();
}
今回はiphoneとAndroidのみをspディレクトリ内の専用画面に飛ばしました。
それ以外にもUAにもwindowsフォンとかいろいろあります。
参考:
ユーザーエージェントによるスマートフォンの端末判別方法について
userAgent(ユーザーエージェント一覧)
そして、個人的にですが
スマートフォンでpc版が強制的に見れなくなっているのはなんかイヤなので
「PC版」リンクをつけました。
そこで思うのが、上記UAによる振り分けで、結局見れないのでは・・ということ。
そこで、リファラーを取得して、
/sp/内以外の画面からアクセスした場合
という条件を追加。
理論的に出し分ける対象者は、外部からのアクセスの人のみのはずだから。
$ua = strtolower($_SERVER[‘HTTP_USER_AGENT’]);
$x = $_SERVER[‘HTTP_REFERER’];
if(((stripos($ua,’iPhone’) !== false)or(stripos($ua,’Android’) !== false))and(stristr($x, ‘http://XX自分のドメインXX.jp) === FALSE)) {
header(‘Location: sp/index.php’);
exit();
}
—–
コメント