ECSHOP商城域名切换访问如何在相同数据下使用不同模板
更新时间:2016-06-30 点击量:1381
同的程序, 相同的数据, 但是需要绑定不同的域名。
如访问:
www.uuecs.com 访问的是红色模板
www.uuecshop.com 访问的是 绿色模板
而且后台可以设置不同的title ,关键字等内容(这样容易欺骗搜索引擎,)
我是用ecshop给他实现这个功能的
需要操作的地方大概有这么几个地方.
因为ecshop 是smarty 的模板引擎,主要去修改他的编译目录,和缓存目录就可以实现这个效果了
第一:
init.php //扩展显示的4行模板判断代码 if($_SERVER['HTTP_HOST'] == 'www.a.com') { $_CFG['template'] = 'default'; }else{ $_CFG['template'] = '360'; } $smarty->template_dir = ROOT_PATH . 'themes/' . $_CFG['template'];// 设置当前网站到底用的是那一个模板(所以在这之 前通过逻辑操作,让不同的页面调用不同的模板)
第二: 设置编译文件存放的目录
cls_template.php 函数 make_compiled (大概225) 里面有一句 $name = $this->compile_dir .'/'. basename($filename) . '.php'; // 编译文件存放的目录 要扩展成这样, 不同的模板存放补同的编译目录,扩展如下 global $_CFG; // 通过全局变量调用当前域名访问的模板 $name = $this->compile_dir . '/' .$_CFG['template'].'/'. basename($filename) . '.php';
第三, 如何开启静态缓存的话需要扩展的地方
函数 fetch 大概190行的
cls_template.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);
这样就可以了,在原来模板数据不变动的情况下就能实现在相同数据下使用不同模板了.
如果文章对您有帮助,就打赏一个吧
«上一篇:ECSHOP循环中 r如何实现套用调取广告位的方法 下一篇: ECSHOP购物车结算提交订单页面如何显示商品缩略图»