ecshop通过不同域名访问显示不同模板的方法

应用户需求共用同一套ecshop数据,后台绑定多个域名,且每个域名对应显示不同模板。

实现思路,ecshop采用smarty模板引擎,修改他的编译目录和缓存目录就可以实现ecshop不同域名展示不同模板功能;废话少说,修改如下。

一、在init.php大概117行

$_CFG = load_config();

之后加入模板判断代码

if($_SERVER['HTTP_HOST'] == 'ecshop.vip') {
    $_CFG['template'] = 'default';
}else{
    $_CFG['template'] = 'default2';
}
$smarty->template_dir = ROOT_PATH . 'themes/' . $_CFG['template'];

二、修改cls_template.php大概227行

$name = $this->compile_dir .'/'. basename($filename) . '.php';

改为

global $_CFG;
$name = $this->compile_dir . '/' .$_CFG['template'].'/'. basename($filename) . '.php';

三、开启静态缓存之后需要修改cls_template.php

大概137行

if (!$this->_seterror)

上方加入

global $_CFG;

大概193行

$hash_dir = $this->cache_dir .'/' . substr(md5($cachename), 0, 1);

改为

$hash_dir = $this->cache_dir . '/'.$_CFG['template'].'/' . substr(md5($cachename), 0, 1);

这样就OK了,不破坏ecshop原本机制。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值