ECSHOP 模版文件里的编辑区域
Ecshop 中的模板能够有可编辑区域,在模板中是通过
<!-- TemplateBeginEditable name="左边区域" -->
<!-- TemplateEndEditable -->
这样的标签来引入的,通过引入可编辑区域,我们就能够后台控制这个可编辑区域的显示和隐藏,同一时候还能够控制里面的内容的显示顺序,通过可编辑区域的引入,我们就能够更加灵活的调整我们的模板文件显示的样式,显示的内容,使得用户更方便管理自己的商店。
可编辑区域是在后台的 模板管理->设置模板里面,通过对模板的选择,我们能够选择详细的模板进行里面可编辑区域的控制。当中的区域选择,是模板中可编辑区域的name来进行的,也就是说模板中有多少个name,在后台就会有多少个可选择option。这些控制是通过
$result = preg_match_all('/(<!--\\s*TemplateBeginEditable\\sname=")([^"]+)("\\s*-->)/', $content, $matches, PREG_SET_ORDER);
这个正則表達式来实现的,后台通过对模板文件进行正则匹配,就找到了全部的可编辑区域的名字,所以这个name就是可编辑区域的一个id,用来供后台定位用的。
因此,我们在进行2次开发的时候,能够适当考虑增加一些可编辑区域,这样当用户想显示一些经常使用内容时,比方热卖商品,购物车等库文件内容时,自己就能够去后台调用,避免了开发者的參与,是得系统控制更加的灵活。
举个实际应用的样例:比方我们要在商品分类树上面加入一个广告,那么我们仅仅须要在后台先加入一个广告位置设定好我们要加入到分类树上面的大小尺寸,然后在广告列表里面加入一个属于这个广告位置的广告,然后进入到 模板管理->模板设置中,我们看到默认商品分类树是在左边区域,那么我们在广告位的位置上点击+,区域也选择左边区域,序号比商品分类树的须要小,就能够让广告显示到分类树的上面了。
这个很灵活,仅仅要设置好样式,我们就能够实现非技术人员来进行页面的管理了。
ECSHOP 模版文件里的编辑区域的更多相关文章
- eclipse/myeclipse选中编辑区域文件,Package Explorer定位文件所在项目及目录
eclipse/myeclipse选中编辑区域文件,Package Explorer定位文件所在项目及目录 1. 打开Package Explorer(若没有,可以按照如下路径点击: Window菜单 ...
- thinkphp里模版文件js无法使用if condition的问题
/** * @example thinkphp里模版文件js无法使用if condition的问题 * @example 参考地址:https://segmentfault.co ...
- ECshop中TemplateBeginEditable 和后台编辑讲解
在ecshop的dwt文件里面经常发现有“<!-- TemplateBeginEditable name="doctitle" -->和<!-- #BeginLi ...
- 钓鱼攻击之远程加载恶意Word模版文件上线CS
0x00 前言 利用Word文档加载附加模板时的缺陷所发起的恶意请求而达到的攻击目的,所以当目标用户点开攻击者发给他的恶意word文档就可以通过向远程服务器请求恶意模板并执行恶意模板上的恶意代码.这里 ...
- 《Java虚拟机原理图解》 1.2、class文件里的常量池
[最新更新:2014/11/11] 了解JVM虚拟机原理 是每个Java程序猿修炼的必经之路. 可是因为JVM虚拟机中有非常多的东西讲述的比較宽泛.在当前接触到的关于JVM虚拟机原理的教程或者博客中 ...
- 《Java虚拟机原理图解》 1.2.2、Class文件里的常量池具体解释(上)
[last updated:2014/11/27] NO1.常量池在class文件的什么位置? 我的上一篇文章<Java虚拟机原理图解> 1.class文件基本组织结构中已经提到了clas ...
- 《Java虚拟机原理图解》1.3、class文件里的訪问标志、类索引、父类索引、接口索引集合
讲完了class文件里的常量池,我们就相当于克服了class文件里最麻烦的模块了.如今,我们来看一下class文件里紧接着常量池后面的几个东西:訪问标志.类索引.父类索引.接口索引集合. 1. 訪问标 ...
- git 文件状态与工作区域
在上一篇简单讲述了文件状态与工作区域,在这里结合相关git命令详细了解文件的状态变更. 目录 1. 介绍 2. 常用命令 3. 实际操作 1. 介绍 git的文件状态是其git核心内容,了解后对后续的 ...
- 如何去掉文件里的^M
起因 csv文件用Python处理之后,有的地方跟着一个^M,特别好奇,以为是处理过程中产生的,后来想了想不是. 解决办法 尝试使用replace替换掉,但是失败了 查询原因,谷歌一番,发现是Wind ...
随机推荐
- SQL Server 无法启动之TCP端口占用
场景再现: ---------------------------------------------------------------------------------------------- ...
- EEPROM和flash的区别
存储器分为两大类:ram和rom.ram就不讲了,今天主要讨论rom. rom最初不能编程,出厂什么内容就永远什么内容,不灵活.后来出现了prom,可以自己写入一次,要是写错了,只能换一片,自认倒霉. ...
- Android 禁止软键盘自动弹出
Android系统对EditText这个控件有监听功能,如果某个Activity中含有该控件,就会自动弹出软键盘让你输入,这个看似人性化的方案有 时候并不被用户喜欢的,所以在有些情况下要禁用该功能.这 ...
- Linux下设置开机自启动Tomcat
方法一: linux 下tomcat开机自启动修改Tomcat/bin/startup.sh 为: export JAVA_HOME=/usr/java/j2sdk1..2_08 export CLA ...
- #include <time.h>
1 _strtime 2 difftime 3 srand 4 time 1 _strtime 函数简介 函数名: _strtime 头文件: time.h 函数原型: char * _strtime ...
- 解密yii中CModule::_components和CModule::_componentConfig
array CModule::_components 所有组件对象(CComponent的子类)将作为键值存在该数组中, 键名是定义该组件时使用的键名.例如: protected function r ...
- MediaChooser图库浏览器
MediaChooser Android库 MediaChooser是一个库,浏览并选择视频和图像从SD卡.它可以用来显示文件中查看图像和视频(显示所有文件)或文件夹视图(显示文件分类).项目按日期, ...
- LeetCode: Surrounded Regions [130]
[题目] Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is cap ...
- window.onload()与$(document).ready()区别
浏览器加载完DOM后,会通过javascript为DOM元素添加事件,在javascript中,通常使用window.onload()方法. 在jquery中,则使用$(document).ready ...
- SQL 语句整理
1. /* SQL CASE 语句写法 * SELECT TABLE1.USER_ID, TABLE1.COMP_CODE, TABLE1.DEPT_CODE, TABLE1.USER_ ...