ホーム > CakePHP > [CakePHP] 携帯サイトの作り方まとめ

[CakePHP] 携帯サイトの作り方まとめ

CakePHPで携帯サイトを作るときのやり方メモです。

例として、

http://hogehoge.com/m/

というURLにアクセスした場合は携帯表示になるという感じです。

この場合、まず、routes.phpに携帯用のルーティングを足します。

app/config/routes.php

Router::connect('/m/:controller/:action', array('prefix' => 'mobile'));

これは、/m/でアクセスした場合、プリフィクスとして、「mobile」を付けるというものです。

続いてコントローラーですが、以下のようにします。

app/controllers/samples_controller.php

function mobile_test()
{
//通常のコントローラー
}

この場合、http://hogehoge.com/m/samples/test とアクセスすると、mobile_test()が実行されます。

Viewも同じように、以下のファイル名で作成します。

app/views/samples/mobile_index.ctp

で、携帯用にlayoutも変更します。

app/app_controller.php

function beforeRender()
{
if (isset($this->params['prefix'])) {
$this->layout = $this->params['prefix'] . '_' . $this->layout;
}
}

app/views/layout/にmobile_??.ctpと言うファイルを使います。

次に、携帯表示で必要な?半角カナへの変換、SJISコードへの変換もapp_controller.phpに追加します。

app/app_controller.php

function afterFilter()
{
parent::afterFilter();

if (isset($this->params['prefix'])) {
$this->output = mb_convert_kana($this->output, 'rak');
$this->output = mb_convert_encoding($this->output, 'SJIS-win', 'UTF-8');
}
}

と言う風にすることで実現できます。

たぶん・・・・

もっとまとめる必要があるかも、、、ま、とりあえず、メモということで(^^;)

CakePHP ポケットリファレンス (Pocket Reference)

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:1

この記事のトラックバック URL
http://www.multiburst.net/sometime-php/2009/02/cakephp-mobile-site/trackback/
トラックバックの送信元リスト
[CakePHP] 携帯サイトの作り方まとめ - Sometime PHP より
pingback - 携帯サイト作成のためにphp.iniを見直してみた - ElectronicBrain is eating BreakFast より 2009/02/27

[...] 先日、CakePHPで携帯サイトを作るやり方を書いたのだが、CakePHP内部では文字コードをSJIS-winに変換してくれるのだが、携帯で見てみると、どうしても文字化けしてしまう、という現象に陥 [...]

ホーム > CakePHP > [CakePHP] 携帯サイトの作り方まとめ

Subscribe This Blog
Subscribe This Blog
FeedBurner

Search
Categories
Tag Cloud
Twitter Counter
Archives
My Other Blogs
Translator
Japanese flagEnglish flag

ページの上部に戻る