WordPress・WEB系の開発(プログラム)関係や技術情報ほか、技術情報全般を掲載

  • このエントリーをはてなブックマークに追加

CakePHP モバイル端末判別と専用テーマについて

CakePHPでモバイル端末を判別する方法と専用テーマでPCサイトとスマホサイトを切り替える方法を書きます。

[1] モバイル端末判別
実装方法は色々あると思いますが、今回は、AppController内に beforeFilter()を追加し、その中でリクエストハンドラコンポーネントのisMobile()メソッドでモバイル端末か否かを判別します。

public function beforeFilter()
{
    if($this->RequestHandler->isMobile()) {
        //モバイルサイト
        $this->theme = 'Mobile';
    } else {
        //PCサイト
    }
}

[2] 専用テーマを作る
Viewディレクトリ内に [Themed] ディレクトリを作成し、その中に 1. で指定した $this->theme にセットした名前と同じ名前のディレクトリを作成します。( Mobile など )
その中に、通常のPCサイトを構築した時と同じルールでテンプレ―トファイルを設置していきます。
リクエストに対応するテーマが作られていない場合は、デフォルトのテーマが呼び出されます。

※リクエストハンドリング – CakePHP Cookbook 2.x ドキュメント
http://book.cakephp.org/2.0/ja/core-libraries/components/request-handling.html

関連記事

コメントは利用できません。

アーカイブ