易希飞

Shopex4.9
市场占有最好的商城建站系统

经典的免费网店系统

Shopex4.9集海量模板、交易支付、团购、秒杀、会员营销等于一身,轻松搭建网上商店,快速扩张营销推广。

了解Shopex4.9
网站首页 > 建站学院 > 模板使用帮助

[ecshop]模板基础知识

2017-02-04 15:52:57 易希飞 阅读

1 什么是库文件
库文件保存的位置是在 模板文件夹中的library文件夹。把一些页面需要用到相同的部分,把这些写成一个文件。
每个库文件,相当于是一个小模块。一个页面是由这些模块,再加其他一些代码组合成的。
库文件的内容,其实是一些代码,写法也一般的模板的写法一样,没什么特殊之处。也是支持html格式代码。

2 为什么要库文件
因为很多页面里面要显示的内容是一样的,而且写法是一样。如果是把页面中载入库文件,那么制作和修改,都方便了许多。
如更改一个小地方,只要更改库文件就可以了,不用一个个页面的修改。
另个好处,后台可以设置是否显示、排序、设置的区域。
这些并不是在模板中判断是否显示、排序、设置的区域。而是把这些写到一些可写区域中,从而达到后台设置的效果。

3 自己可以添加库文件吗
可以的。需要设置下,一个程序修改admin\includes\lib_template.php,另一个是模板文件的libs.xml设置。
这个就是为什么,有些库文件后台可以选择使用,并设置区域,有些库文件后台不能设置。(后台模板设置中,显示的那些部分,其实都是库文件,所以每个页面显示的库文件都有些不同)

4 .dwt 页面的数据从哪里来
ec用的是smarty,所以数据是通过smarty获取的。一般有这样的规律,模板名称和获取程序的文件是一样的。
如index.dwt的数据是从index.php,goods.dwt的数据是从goods.php中获取的(是在根目录下.php,不是在admin文件夹中)

5 不同的.dwt使用同一个库文件,为什么会产生的效果不一样
一、不同的.dwt从程序文件获取的数据不同
二、库文件中对数据做了判断如加类的语法{if}

6 为什么不让每个页面获取全部的库文件
由于每个页面获得的数据不同,即使把库文件加到可写区域中,但是由于没有数据,是不会有效果的。而且程序不需要把全部的数据输出。首先有些页面根本不需要这些数据,其次,输出多余数据,会减低运行效率。所以程序是选择性的的输出。
如果是个性的设置,有些数据默认程序是没有输出的,如果需要这些数据,那么就必须更改程序或者是模板中使用php程序(这个是不规范的)

7 什么是可编辑区
这个是ec模板的一大特色。可编辑区是,可以通过后台设置,把一些库文件写到可以编辑区内,达到模板设置的目的。一旦后台模板设置调整了,那么对应页面可编辑内的内容就会被重写

8 怎么辨别是可以编辑区
  像这样的一个区域


这里面是可编辑区
他的外面是不可编辑区

9 可编辑区的优点与缺点
优点:由于可编辑区的特性,大大加强了模板灵活性与模板个性。用可以可以根据个人的喜好,调整模板。同时减少了模板制作时间。
缺点:增加了css写的难度,需要考虑多方面,增加了模板设计难度。对不熟悉ec模板特性的用户增加了修改难度,典型一、为什么修改了模板,后台一设置,修改的部分不见了。典型二,模板一设置,模板自带的广告位没了

10 如何自己建立一个可编辑区
在不可以编辑区外
建立一个可编辑区就可以了

11 模板怎么加入库文件

像这样就可以引入一个库文件

12 是否有特殊文件,不是由对应的程序传过来的。
有一个特殊文件php文件linclude/ib_insert.php,里面  调用浏览历史、调用购物车信息、调用指定的广告位的广告、调用会员信息。。。。
模板中的这些信息是通过这个文件获取的,并不从对应文件.php文件获取。如果需要用到这些信息,只要调用该文件,那么这些信息是全局可用的。

13 模板的图片位置
模板图片需要放到模板文件夹中的image中,或者使用外链或者绝对地址,这样才能使用

14 后台模板选择是显示的模板名称和版本,这些是在模板文件中的哪里设置的
这些模板信息都是在模板的css文件中注释部分。一般为style.css

15 模板中中文和英文怎么出现的,我未在模板中找到
模板的语言项,是从语言包中获取的。在ec的目录下有languages,里面有不同的语言包。前面的模板语言包是放在
languages\zh_cn的目录下,里面有语言包下(zh_cn是简体中文,其他语言是其他目录,如果是添加新的语言包,按里面的格式添加就可以了)
后台的语言包是放在languages\zh_cn\admin语言包中。(现在猜出怎么让后台是中文,前台是英文的方法没,嘻嘻)
例外的一些是插件的语言包,如配送和支付插件语言包。

16 模板的中语言包怎么调用
想{$lang.goods_attr}这样就是调用语言包中的 $_LANG['goods_attr']。
如果是模板中调用语言包,肯定有{$lang.这样的标示。再找到后面的字段最后到语言包中搜索就可以了。如果需要更改语言包可以按照前面的方法修改或者到后台的语言项里面编辑(有些语言项后台可以直接更改,不需要在文件中搜索)