ecshop系统只有一个,当然数据、后台当然也是通用一个,根据来访域名判断,不同域名使用不同模板。
实现思路:先把两个不同的域名解析到一起,并同时绑定域名到网站目录上.
一,修改includes/init.php
查找
$smarty->template_dir = ROOT_PATH . 'themes/' . $_CFG['template'];给其上面添加
if($_SERVER['HTTP_HOST'] =='www.baidu.com')
 {
        $_CFG['template'] = 'baidu';//www.baidu.com这个域名的模板目录
    }elseif{$_SERVER['HTTP_HOST'] =='www.qq.com'
        $_CFG['template'] = 'qq';//www.qq.com这个域名的模板目录
 }else{
        $_CFG['template'] = 'default';//非特殊域名访问默认目录
 }二,再修改includes/cls_template.php 文件
查找
$name = $this->compile_dir . '/' . basename($filename) . '.php';
将其替换为
	global $_CFG;// 通过全局变量调用当前域名访问的模板
  $name = $this->compile_dir . '/' .$_CFG['template'].'/'. basename($filename) . '.php';//根据模板名生成缓存目录
三,第三步修改静态缓存目录,比如商店设置,商品分类等缓存目录.继续查找$hash_dir = $this->cache_dir . '/' . substr(md5($cachename), 0, 1);将其替换为global $_CFG;
   $hash_dir = $this->cache_dir . '/'.$_CFG['template'].'/' . substr(md5($cachename), 0, 1);四、修改清除缓存的clear_tpl_files函数打开includes\lib_common.php查找$dirs[] = ROOT_PATH . $tmp_dir . '/compiled/';
        $dirs[] = ROOT_PATH . $tmp_dir . '/compiled/admin/';将其替换为$dirs[] = ROOT_PATH . $tmp_dir . '/compiled/' . $_CFG['template'] . '/';
        $dirs[] = ROOT_PATH . $tmp_dir . '/compiled/coffee/';
        $dirs[] = ROOT_PATH . $tmp_dir . '/static_caches/';//修复修改商品分类后看不到效果,因为缓存没有被清空.
        $dirs[] = ROOT_PATH . $tmp_dir . '/compiled/admin/' . $_CFG['template'] . '/';五、创建缓存目录(以自己的域名为准),对应模板
	\temp\compiled\default
	\temp\compiled\baidu
	\temp\compiled\qq
	temp\compiled\admin\default
	temp\compiled\admin\baidu
	temp\compiled\admin\qq
本文地址:https://www.phpicu.com/article.php?id=41



