Blog

concrete5でモバイルからのアクセスの際に条件分岐する

Posted by admin at 15:07 日時 2013/03/19

例によってメモ程度に。モバイルのUser Agent判定用のサードパーティーのライブラリーがあるので、それを読み込んできたら基本的にどこでも使えます。

Loader::library('3rdparty/mobile_detect');  $md = new Mobile_Detect();  if($md->isMobile()) {  	// mobile view  	// sample : $this->inc(elements/mobile.php);  } else {  	// not mobile view  	// sample : $this->inc(elements/pc.php);  }

具体的にどんな User Agent の時に判定されるのかは、concrete/libraries/3rdparty/mobile_detect.php にずらずら書かれているので、このファイルをオーバーライドすれば反映するUAの加減ができます。

ブロックテンプレートでこの書き方を使えば、特定のブロックだけ、PCとモバイルで出力を切り替えることもできるので、レスポンシブ・ウェブデザインと組み合わせて便利に使えると思います。フルページキャッシュとの相性は悪いですが。


Share this entry