BaserCMS を初めて使ってるんでメモ。

携帯の判定は /baser/bootstrap.php 内で行っていて、該当した UserAgent の場合に適宜情報を Configure::write() しています。

Configureに書き込まれているモバイルアクセス関連の設定値
キー 値の候補 備考
AgentPrefix.currentAgent ‘mobile’, ‘smartphone’, null $config[‘AgentSettings’]のキーがそのまま入る。
AgentPrefix.currentPrefix ‘mobile’, ‘smartphone’, null currentAgent と同じ値だが、BaserCMSのコアではこちらを用いてMobileHelperのロードを行ったりしているため、これを使用した方がよさそう。
AgentPrefix.currentAlias ‘m’, ‘s’, null URLに挿入されるプリフィクス。
AgentPrefix.on true, false プリフィクスの有無。

例:独自で作成した携帯用ヘルパー(AppMobileHelper)またはスマホ用ヘルパー(AppSmartphoneHelper)を用いる場合。
※”MobileHelper” というクラスは、BaserCMSのコアで使用されているので名前が衝突しないように注意です。

App::import('Core', 'BaserAppController', array('search' => BASER_CONTROLLERS));
/**
 * Controller 拡張クラス
 *
 * @package			baser.controllers
 */
class AppController extends BaserAppController {

	function __construct(){
		if( $prefix = Configure::read( 'AgentPrefix.currentPrefix' ) ){
			$this -> helpers = array( 'App' . ucfirst( $prefix ) );
		}
		parent::__construct();
	}
}

しかし、このCMSは簡単にそれなりのものが出来ちゃいますね♪
素晴らしいです。

ありがとう、BaserCMS !