要切换模板当然要弄懂原理,3.1.3有检查缓存模板的方法
if(is_file(C('CACHE_PATH').$prefix.md5($tmplContent).C('TMPL_CACHFILE_SUFFIX'))){
return true;我们看到这个 $prefix 很有利用价值(默认值为空,由 C('TMPL_CACHE_PREFIX')定义),我们可以这么想: pc段定义为 p_ 表示电脑端, m_表示手机端 这样我们可以很清楚的分辨我们的模板 很不错吧具体实现,我们需要我们所有的控制器都继承一个公共的 控制器,
在公共的控制器中检查 是否是手机访问。
if($this->isMobile()) {
C('DEFAULT_THEME', 'mobile'); // 这里定义手机模板目录
C('TMPL_CACHE_PREFIX', 'm_');
} else {
C('DEFAULT_THEME', 'default'); // 这里定义pc模板目录 默认C('DEFAULT_THEME')为空
C('TMPL_CACHE_PREFIX', 'p_'); // 这段可以不写 默认为空 没有前缀
}
最佳答案