2011年4月6日水曜日

openPNEでスマートフォン表示

スマートフォン用の表示というより、テンプレートの切り分け方に関して発見したのでメモ。

テンプレートファイルをセットしているのはcontroller.phpのopenpne_forwardメソッド。
150行目付近でdo系かpage系か判定した直後

$smarty->templates_dir = $module . '/templates';

これ↑

$module変数はこのメソッドの前にopenpne_execute内でisKtaiUserAgentにて判定。
要は携帯のエージェントじゃなきゃPCで来る。

ので、こんな感じのことやればいいのではないかと


if($module == 'pc' && (strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone')|| strstr($_SERVER['HTTP_USER_AGENT'], 'Android'))){
         $smarty->templates_dir = 'ディレクトリ名/templates';
        }else{
         $smarty->templates_dir = $module . '/templates';
        }

こうすればロジックはPCでテンプレートだけ別物を使うことが可能ではないでしょうか?

0 件のコメント:

コメントを投稿