您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop的smarty库还原成smarty原生库的实现方法
史霄灼2025-01-20Ecshop商城教程已有人查阅
导读写过ecshop模板的人都晓得,他们是用所谓的dwt的文件来嵌套lbi文件进行模板的彼此调用。在咱们调取数据的时分,ecshop的默许模板只提供给咱们几个简略的句子进行调用
写过ecshop模板的人都晓得,他们是用所谓的dwt的文件来嵌套lbi文件进行模板的彼此调用。在咱们调取数据的时分,ecshop的默许模板只提供给咱们几个简略的句子进行调用,那么有没有办法能够把这个精简的cls_template类添加其他的句子呢?
首要断定版别:ECShop v2.7.3
通过近一天对ecshop程序的研讨,发现这个所谓的cls_template类,其实是一个精简版的smarty,而且值得幸亏的是,这个cls_template类没有包括其他的文件。那么咱们完全能够将官方smarty直接拿来用。断定了这一点,剩余的就是看ECShop在哪里运用这个cls_template类了。
翻开index.php,咱们发现他里边有这样一句话:
我这里不说废话了,直接给办法了。
仿制一份init.php 为 init_x.php ,在根目录的 index.php 中,将:
如今去官方下载一个smarty模板,这里用的是2.6的版别(3.1的版别试过,有错。估量ecshop其时用的是2.6兼容的,别问我为啥。),放在include的文件夹里,而且在init_x.php中包括当时的原生smarty类而且用Smarty类交换之前的cls_template类,代码如下:
持续往下查看:
断定无误后,能够回到根目录的index.php文件上了。
之前,咱们将init.php 换成了init_x.php,这仅仅第一步。下面咱们要持续修正模板,将一切的dwt文件换成tpl文件(回忆中是两处)。
如今进入themes文件夹,将index.dwt文件修正为index.tpl文件。
如今咱们来翻开debug,看看能不能进行smarty调试,并运用其他的smarty标签了。(这里阐明一下,smarty文件夹需求有可运转的权限。)
还记住刚刚你屏蔽的那两行smarty不存在的变量么?那个是调试。咱们细心对照发现,2.6的smarty调试的变量名称为debuging。
咱们将方才:
首要断定版别:ECShop v2.7.3
通过近一天对ecshop程序的研讨,发现这个所谓的cls_template类,其实是一个精简版的smarty,而且值得幸亏的是,这个cls_template类没有包括其他的文件。那么咱们完全能够将官方smarty直接拿来用。断定了这一点,剩余的就是看ECShop在哪里运用这个cls_template类了。
翻开index.php,咱们发现他里边有这样一句话:
require(dirname(__FILE__).'/includes/init.php');
所以咱们找到这个文件,找到创立的那个cls_template类,代码如下:
require(ROOT_PATH .'includes/cls_template.php');
$smarty =new cls_template;
这里发现他们创立了一个smarty的一个目标,其实咱们写的模板中一切能用的标签都是用这个的。我这里不说废话了,直接给办法了。
仿制一份init.php 为 init_x.php ,在根目录的 index.php 中,将:
require(dirname(__FILE__).'/includes/init.php');
改为:
require(dirname(__FILE__).'/includes/init_x.php');
即可。原因是还有其他地方运用了init.php,直接修正的话,会形成不行预知的成果。如今去官方下载一个smarty模板,这里用的是2.6的版别(3.1的版别试过,有错。估量ecshop其时用的是2.6兼容的,别问我为啥。),放在include的文件夹里,而且在init_x.php中包括当时的原生smarty类而且用Smarty类交换之前的cls_template类,代码如下:
/* 获得当时ecshop地点的根目录 */
define('ROOT_PATH', str_replace('includes/init_x.php','', str_replace('\\','/', __FILE__)));
/* 创立 Smarty 目标。*/
require(ROOT_PATH .'includes/Smarty-2.6.27/libs/Smarty.class.php');
$smarty =newSmarty;
$smarty->cache_lifetime = $_CFG['cache_time'];
$smarty->template_dir = ROOT_PATH .'themes/'. $_CFG['template'];
$smarty->cache_dir = ROOT_PATH .'temp/caches';
$smarty->compile_dir = ROOT_PATH .'temp/compiled';
这里注重途径和类名的修正。还有就是细心查看smarty类需求的那几个变量和路近能否都存在。持续往下查看:
if((DEBUG_MODE &2)==2)
{
$smarty->direct_output =true;//我记住这个变量smarty如同没有
$smarty->force_compile =true;
}
else
{
$smarty->direct_output =false;//
$smarty->force_compile =false;
}
看这一段,查看smarty类里能否存在这几个变量,没有就删掉。断定无误后,能够回到根目录的index.php文件上了。
之前,咱们将init.php 换成了init_x.php,这仅仅第一步。下面咱们要持续修正模板,将一切的dwt文件换成tpl文件(回忆中是两处)。
如今进入themes文件夹,将index.dwt文件修正为index.tpl文件。
如今咱们来翻开debug,看看能不能进行smarty调试,并运用其他的smarty标签了。(这里阐明一下,smarty文件夹需求有可运转的权限。)
还记住刚刚你屏蔽的那两行smarty不存在的变量么?那个是调试。咱们细心对照发现,2.6的smarty调试的变量名称为debuging。
咱们将方才:
$smarty->direct_output =false;
中的direct_output,修正为debuging,而且改为true就能够弹出smarty官方的调试窗口了。
本文标签:
很赞哦! ()
下一篇:ecshop数据库表字段说明
相关教程
图文教程
ecshop在PHP7时遇到的兼容报错的解决方法
在 PHP7 上安装 ECShop V2.7.3时,报错!Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ECS has a deprecate
ecshop商品页显示供应商/供货商名称的方法
好久没写文章了,隐约记得前几天有人问到这个问题:【如何在ecshop商品详情页面显示该商品的供货商?】
LAMP环境部署ecshop的方法
实验环境Centos7ip:192.168.121.17一、关闭防火墙和selinux[root@localhost ~]# systemctl stop firewalld
ecshop商品库存为0时显示为缺货提示不能订购的解决方法
ECSHOP商品库存为0时显示为缺货提示不能订购教程。打开所在的goods.dwt模板,搜索购物那个按钮(提示:图片另存就知道文件名),之后看到一下代码
相关源码
-
(自适应响应式)黑色酷炫高端数码摄影pbootcms网站模板源码本模板基于PbootCMS开发,为摄影工作室、个人摄影师及摄影爱好者设计。采用深色系风格,突出摄影作品展示效果,适配各类数码设备浏览。适用于作品集展示查看源码 -
(PC+WAP)地暖热水器烘干机节能设备网站模板下载为地暖热水器及节能设备企业设计的PbootCMS网站模板,集成产品展示、节能方案介绍、技术参数说明等专业模块。采用PC与移动端同步响应架构查看源码 -
粉色家政月嫂保姆公司pbootcms网站模板(PC+WAP)为家政服务、月嫂保姆企业打造的营销型解决方案,基于PbootCMS内核开发,采用温馨粉色主题传递行业温度。PHP7.0+高性能架构支持SQLite/MySQL双数据库查看源码 -
(自适应)html5宽屏电线电缆材料加工制造类企业网站源码下载本模板基于PbootCMS系统开发,特别适合电线电缆、电缆材料及相关加工制造类企业使用。采用HTML5宽屏设计,能够展示各类电缆产品的技术参数和规格详情,帮助客户全面了解产品特性。查看源码 -
(自适应html5)自媒体运营培训教程个人博客pbootcms模板本模板基于PbootCMS系统开发,特别适合自媒体运营培训、知识付费类网站使用。采用响应式设计,能够适配各类终端设备,为内容创作者提供专业的内容展示平台。查看源码 -
响应式WordPress简约博客主题Alt_BlogAlt_Blog主题该模板为博客内容展示设计,采用简约现代的风格理念,打造清晰的内容呈现平台。响应式布局确保在不同设备上都能获得良好的浏览体验,帮助博主更好地展示和分享内容。查看源码
| 分享笔记 (共有 篇笔记) |
