飞飞CMS移动手机版与PC版站点共存,自动更改模板目录方法

飞飞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

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注