您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop域名切换访问使用相同数据不同模板效果
黎舒旺2024-01-19 22:02:19ecshop商城教程已有人查阅
导读ECSHOP如何实现相同数据不同域名访问显示不同模板界面效果常有客户问这样的一个需求, 他想要这样一个网站, 网站内容是相同的程序, 相同的数据, 但是需要绑定不同的域名。
ECSHOP如何实现相同数据不同域名访问显示不同模板界面效果常有客户问这样的一个需求, 他想要这样一个网站, 网站内容是相同的程序, 相同的数据, 但是需要绑定不同的域名。
而且后台可以设置不同的title ,关键字等内容(这样容易欺骗搜索引擎,)
我是用ecshop给他实现这个功能的
需要操作的地方大概有这么几个地方.
因为ecshop 是smarty 的模板引擎,主要去修改他的编译目录,和缓存目录就可以实现这个效果了:
cls_template.php
函数 make_compiled (大概225) 里面有一句
函数 fetch 大概190行的
而且后台可以设置不同的title ,关键字等内容(这样容易欺骗搜索引擎,)
我是用ecshop给他实现这个功能的
需要操作的地方大概有这么几个地方.
因为ecshop 是smarty 的模板引擎,主要去修改他的编译目录,和缓存目录就可以实现这个效果了:
init.php
//扩展显示的4行模板判断代码
if($_SERVER['HTTP_HOST'] == 'www.ebingou.cn') {
$_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);
这样就OK了,一点都不破坏ecshop原来的机制.
本文标签:
很赞哦! ()
相关文章
随机图文
-
在ecshop后台左侧导航中增加新菜单的方法
有个别高级用户(懂PHP的),提到这样的问题:在后台管理左侧导航中新增一个菜单项,或者是修改菜单项的名字、或者是删除某菜单项。 -
ecshop商城后台订单选择加入商品时提示库存不足的修改方法
ECSHOP后台订单加入商品时提示库存不足请重新选择的错误问题,ECSHOP商城所有版本包括很新ecshop4.1版本中都出现了这个bug官方未修复,原因是ecshop在ajax调用商品的时候 -
怎么删除meta name="Generator" content="ECSHOP v2.7.2"
大家可能都发现了,商城源代码里面有下面这样的代码。这个代码很不安全,很多网络罪犯就是利用版本信息来寻找漏洞入侵网站,并且对网站进行破坏的。 -
ecshop验证码不显示的解决方法
知道大家注意到了没有,ECSHOP的验证码设置有一个BUG,那就是 “用户登录”和“发表评论”的验证码设置是相冲突的。
留言与评论 (共有 条评论) |