Ecshop模板网
首页 > ecshop教程 > ecshop经验分享 > 实现ecshop二次加模板后台可以管理
文章详情

实现ecshop二次加模板后台可以管理

ecshop模板网 / 2014-06-27

该ecshop修改方法可以让二次开发者更好的支持定制模板,针对ECSHOP进一步的优化起到决定性的作用,以下ecshop模板堂方法:

添加库文件

demo1

1. 在 /themes/CURRENT_THEME/library/ 下新建一个demo-libs.lbi文件,并添加以下内容:(新建库)


  1. this is a demo lib
复制代码

2. 在 /languages/zh_cn/admin/template.php文件中添加以下一行:(库的中文名)

  1. $_LANG['template_libs']['demo_libs'] = '示例库';
复制代码

3. 在 /themes/CURRENT_THEME/index.dwt 文件中任意位置添加以下内容:(使用示例,可在任意文件中调用)

复制代码

完成上述三步,在首页即可看到新添加的内容。后台 - 模板管理 - 库项目管理中也可以看到并可编辑。库项目并没有写入数据库存储,而是在template.php文件中用opendir,readdir函数读取文件列表的。




说明:在模板文件(.dwt)中常看到 BeginLibraryItem 和 EndLibraryItem标签中间有一段代码,这段代码会被BeginLibraryItem标签所引用的库文件中的内容覆盖掉,所以做模板时这点html代码可有可无。


===============================================

上述步骤说明了新建一个库文件,并把库文件手动添加到页面的方法。但是经常,需要灵活的控制库项目的位置,比如显示在左边或右边。ecshop的后台提供了这样的机制,允许后台编辑库项目的存放区域。


demo2

1. 按照 demo1步骤1,2新建一个库文件 demo_second.lbi,并设置好语言。

2. 打开 /admin/includes/lib_template.php 找到 $page_libs ( 大概53行,/* 每个模板允许设置的库项目 */),在'index'=>array()的数组里添加如下一行:

  1. /library/demo_second.lbi' => 0 //new
复制代码


3. 后台-模板管理-设置模板,即可做管理了。


说明:默认主题目录下有个libs.xml文件,这个就是配置模板的。系统默认就有一些模板和库项目(参见/admin/includes/lib_template.php文件)的,如果没有libs.xml文件,则后台模板设置里,这些系统默认的模板文件库项目都是可编辑的。设置libs.xml后,在libs.xml中出现的文件是可编辑的,未出现的是不可编辑的。这里所说的编辑是指后台的操作。另外,数据表{pre}_template会记录这些操作,为了来回切换主题时,自动加载上次的配置。


==================================

添加可编辑区域

后台设置模板时,可以选择库项目的投放区域。后台会遍历该模板文件(dwt)的DOM,把所有可编辑区域列出来,供库项目选择区域。这个类似于wordpress博客的工具栏。至于该区域显示在页面的哪个地方,则由css控制。


demo3

在dwt文件中添加一个:


复制代码

========================================

添加可编辑的模板

demo4


1. 打开 /admin/includes/lib_template.php 文件,在$template_files数组最末添加 'demo.dwt'

2. 在 $page_libs 数组中添加如下数据:

  1. 'demo'=>array(
  2. '/library/history.lbi' => 0, //这个dwt文件中可编辑的库项目
  3. ),
复制代码

3. 添加语言描述。/languages/zh_cn/admin/template.php

$_LANG['template_files']['demo'] = '示例模板';

4. 把index.dwt文件复制为demo.dwt

5. 后台-模板管理-设置模板-请选择一个模板(下拉列表选择“示例模板”),即可看到了。


下一篇: ecshop购买记录增加和显示更多信息 上一篇: 修改ECSHOP商店名称传入支付宝
 用户评论(共 0 条评论)
  • 暂时还没有任何用户评论
用户名: 匿名用户 E-mail:
当前心情:
评论内容:
验证码: captcha
返回顶部 返回首页
 
QQ在线咨询
售前电话热线
#
售前QQ客服