飞飞CMS 没有自带移动解决方案,问了几个站长朋友,都是新建站点来区分移动和PC版本的模板的。
本来这个东西就不难,下面贴飞飞CMS电脑版与手机版出程序共存 模板自动匹配
文件路径:\Lib\ThinkPHP\Lib\Think\Core\App.class.php
搜索:// 设置系统时区 PHP5支持
在这句话上面新增下面三行代码:
//判断是否是移动端
if($_SERVER['HTTP_HOST']=="m.526net.com"){
C('IS_M','_m');
}else{
C('IS_M','');
}
接着搜索:/* 模板相关目录常量 */
define('TEMPLATE_NAME', $templateSet);
修改为:
define('TEMPLATE_NAME', $templateSet.C('IS_M'));
接着往下将:
C('CACHE_PATH',CACHE_PATH.GROUP_NAME.'/');
修改为:
C('CACHE_PATH',CACHE_PATH.GROUP_NAME.C('IS_M').'/');
接着往下将:
C('CACHE_PATH',CACHE_PATH);
修改为:
C('CACHE_PATH',CACHE_PATH.C('IS_M'));
文件路径:\Lib\ThinkPHP\Lib\Think\Util\HtmlCache.class.php
搜索:// 特殊系统变量
将:
array(APP_NAME,MODULE_NAME,ACTION_NAME,defined('GROUP_NAME')?GROUP_NAME:''),
修改为:
array(APP_NAME,MODULE_NAME,ACTION_NAME.C('IS_M'),defined('GROUP_NAME')?GROUP_NAME:''),
到这缓存和模板缓存就已经区分开了。
下面是后台的删除缓存的代码。模板缓存会自动删除的。 但是静态缓存不会自动删除。我们需要接着修改
文件路径:\Lib\Lib\Action\Admin\CacheAction.class.php
搜索:public function delhtml(){
在:
@unlink(HTML_PATH.'index'.C('html_file_suffix'));
下面新增一行:
@unlink(HTML_PATH.'index_m'.C('html_file_suffix'));
将:
if(is_dir(HTML_PATH.'Vod_show')){$dir->delDir(HTML_PATH.'Vod_show');}
下面新增一行:
if(is_dir(HTML_PATH.'Vod_show_m')){$dir->delDir(HTML_PATH.'Vod_show_m');}
下面的以此类推。
搜索:public function delhtml_day(){
在:@unlink('./Html/Vod_play/'.$id); 下面新增:
@unlink('./Html/Vod_read_m'.'/'.$id);
@unlink('./Html/Vod_play_m'.'/'.$id);
在:@unlink('./Html/index'.C('html_file_suffix'));下面新增:
if(!$dir->isEmpty('./Html/Vod_show_m')){$dir->delDir('./Html/Vod_show_m');}
if(!$dir->isEmpty('./Html/Ajax_show_m')){$dir->delDir('./Html/Ajax_show_m');}
@unlink('./Html/index_m'.C('html_file_suffix'));
OK大功告成。
其中 m.526net.com 修改为你的手机版域名。
模板目录是你后台设置的默认目录后面加_m 比如你模板名称为 526tpl 那么你移动版 目录就是 526tpl_m
评论