转:

管理中心的“设置模板”其实就是把特定的【库项目】添加到模板中的【可编辑区域】,或从【可编辑区域】中删除/修改某些【库项目】,后台的“设置模板”只能对添加特定的【库项目】,哪个模板可以添加什么库文件是由admin/includes/lib_template.php配置的。当中的数组$page_libs存储了每个模板允许设置的库项目。 

如果你自己开发了一个库项目,并且添加到了某个模板中,那么你就要慎用后台的“设置模板”了,因为一个不小心,“设置模板”功能可能会删除或修改你添加的库项目。

例如,我开发了一个库项目test.lbi,其内容是<div>hello world!</div>,我在首页模板的“左边区域”添加这个库项目。



左边区域原来是放商品目录导航的:



<!-- TemplateBeginEditable name="左边区域" -->

<!-- #BeginLibraryItem "/library/category_tree.lbi" -->

<!-- #EndLibraryItem -->

<!-- TemplateEndEditable -->





现在我把test.lbi插到目录前面

<!-- TemplateBeginEditable name="左边区域" -->

<!-- #BeginLibraryItem "/library/test.lbi" -->

<!-- #EndLibraryItem -->

<!-- #BeginLibraryItem "/library/category_tree.lbi" -->

<!-- #EndLibraryItem -->

<!-- TemplateEndEditable -->

保存index.dwt,刷新网站首页,目录上方出现了“hello word!”



这时我去后台“设置模板”对首页进行设置,随便在某个广告位加一个广告,确定,提交。刷新首页一看,新增的广告出现了,但hello world却不见了,用Dreamweaver打开index.dwt,发现

<!-- TemplateBeginEditable name="左边区域" -->

<!-- #BeginLibraryItem "/library/test.lbi" -->

<!-- #EndLibraryItem -->

<!-- #BeginLibraryItem "/library/category_tree.lbi" -->

<!-- #EndLibraryItem -->

<!-- TemplateEndEditable -->

变回了

<!-- TemplateBeginEditable name="左边区域" -->

<!-- #BeginLibraryItem "/library/category_tree.lbi" -->

<!-- #EndLibraryItem -->

<!-- TemplateEndEditable -->





原来提交时,系统对所有可编辑区域进行了重新设置,由于我自己开发的库项目test.lbi没有在lib_template.php中进行配置,所有在后台“设置模板”中没有显示,【可编辑区域】“左边区域”被更新时就没有把test.lbi加上去了。



要解决这个问题,不能把test.lbi放在可编辑区域,或者在lib_template.php中加上test.lbi,后者改动比较麻烦,一般采用前者。





如果用Dreamweaver手工修改模板或制作模板,【可编辑区域】标签能省就省吧!如果你对该区域的内容已经制定,就不必用【可编辑区域】来管理了。



另:模板中“精品”、“新品”、“热销”、“特价”等的显示数量只能通过[设置模板]进行设置,不能直接在模板文件(dwt)或库文件(lbi)中指定。不过还好的是,关于“精品”、“新品”、“热销”、“特价”等库项目,就算他们不在模板的编辑区也可以进行数量设置,提交时并不重写对应区域的代码[但每次提交的时候一定要勾选“显示”,是每次提交都要重新勾选]。究竟显示多少个,这个值的读取比较复杂,另文分析。[当然如果一定要在库文件中指定也可以,就是修改lib_template.php中的对应的显示数量,使默认显示数量足够大,然后库项目中设置循环读取的数量(只能少于等于lib_template.php的设置)]

ecshop 模板与库文件lbi的更多相关文章

  1. STM32新建模板之库文件

    一.新建项目文件夹 在桌面创建项目文件夹,用于存放工程,命名为"stm32f10x_project" 在项目文件夹中创建3个文件夹,分别命名为:CMSIS.OUTPUT.STM32 ...

  2. ECSHOP模板文件说明

    最新ECSHOP 2.7.3完整的一套ECSHOP模板有一下构造 • 35个 .dwt文件(模板框架文件.可调用lbi库文件的主体文件) • 57个 .lbi文件(模板库文件,可通过后台库项目管理直接 ...

  3. ecshop模板修改后还原的原因

    转:http://www.ecmoban.com/article-1693.html 有些刚接触 ecshop的朋友会遇到这样的问题:今天刚修改好的一个地方,等过一段时间后台操作了一会之后发现修改过的 ...

  4. ecshop模板如何修改详细图解

    ecshop模板如何修改?很多人在问这个问题,今天就以图解的方式给大家详细说下.相信学完之后,你会很清楚如何修改ecshop模板,不管你是初学者还是程序高手. 1, ecshop的模板结构 ecsho ...

  5. 修改ecshop模板体会

    在上一篇中给大家带来了ecshop的总体的框架.从总体上看ecshop,相信大家的思路应该很清楚.作为一个对开源项目修改者你来说,能对ecshop有个初步的了解就行了,下面我会给大家带来我在修改ecs ...

  6. ecshop 模板开发总结

    ecshop 模板开发总结 模板标签 1.{$articleTitle|escape:"html"} 描述:用于html转码,url转码,在没有转码的变量上转换单引号,十六进制转码 ...

  7. ectouch第七讲 之ECshop模板机制整理

    网上的资源感觉还是有些用,可以看看,帮助理解,ECshop模板机制整理原文:http://blog.sina.com.cn/s/blog_6900af430100nkn8.html 一.模板引擎: E ...

  8. ecshop的smarty库还原成smarty原生库方法

    写过ecshop模板的人都晓得,他们是用所谓的dwt的文件来嵌套lbi文件进行模板的彼此调用.在咱们调取数据的时分,ecshop的默许模板只提供给咱们几个简略的句子进行调用,那么有没有办法能够把这个精 ...

  9. ecshop中index.dwt文件分析

    对于ecshop新手来说,这篇总结值得关注. 对于没有web编程基础的同学来说,ecshop模板里面有两个文件特别重要, 但是这两个文件同时也很不好理解,分别是index.dwt和style.css. ...

随机推荐

  1. 关于Debug下的Log打印问题

    在项目中为了调试经常会用到Log打印,比如打印当前方法__func__, 对象,地址等等,所以项目最后每次运行调试控制台满满的都是打印日志,到release发布的时候,显然不太合适,这里其实可以用一个 ...

  2. iOS常见的设计模式

    ios开发学习中,经常弄不清楚ios的开发模式,今天我们就来进行简单的总结和探讨~ (一)代理模式 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现.优势:解耦合敏捷原则 ...

  3. java.lang.NoSuchMethodError: org.apache.neethi.Policy.normalize(Z)Lorg/apache/neethi/PolicyComponent

    记录一个org.apache.neethi包的异常 java.lang.NoSuchMethodError: org.apache.neethi.Policy.normalize(Z)Lorg/apa ...

  4. C/C++中memset函数

    本文学习参考http://baike.baidu.com/link?url=ZmSyY8ciB_nJt9KM-W2fiEFJrC2mugFsLqRdY2b4pLe8rD_jRXyN7_pj0GBBD2 ...

  5. (hdu)5652 India and China Origins 二分+dfs

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5652 Problem Description A long time ago there ...

  6. 九度OJ 1370 数组中出现次数超过一半的数字

    题目地址:http://ac.jobdu.com/problem.php?pid=1370 题目描述: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2 ...

  7. js中使用prototype扩展对象方法

    //---------------------对象 //1. var HomeContrl = function(){ this.foo = 'bar'; //对象方法 this.intro = fu ...

  8. source insight添加汇编文件.s

    (1) 做ARM嵌入式开发时,有时得整汇编代码,但在SIS里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来,默认只加了.inc和.asm后缀的, ...

  9. 使用ajax传递及接收数据

    前端代码: <input id="txtNum1" name="txtNum1" type="text" width="13 ...

  10. NWERC 2012 Problem A Admiral

    一个最小费用最大流的简单建模题: 比赛的时候和小珺合力想到了这个题目的模型: 方法:拆点+边的容量为1 这样就可以保证他们不会在点上和边上相遇了! 感谢刘汝佳大神的模板,让我这个网络流的小白A了这个题 ...