学习NO.1 发表于 2016-5-24 09:50:28

ecshop模板文件解说及部分代码修改实例详解

ecshop模板如何修改?相信很多网友都比较头疼,下面对一些部分代码做详细解释,希望能够帮到大家!
更希望大家能在 麦维PHP开源社区 找到适合自己的一个开源模板。更提醒大家,模板简洁大方,能让用户第一眼看上去美观,就算是达到目的了,不要频繁更换自己的模板风格!无论是收费或是开源的模板,都不可能完全让使用者感到合适,即便是企业高额定制的模板,也会有其缺陷在里面。
以下解说仅供网友参考,修改之前建议备份模板,养成好习惯!也希望大家能够跟帖分享你们的经验!
模板文件解析:style.css   -模板所使用样式表activity.dwt-活动列表article.dwt   -文章内容页article_cat.dwt   -文章列表页article_pro.dwt-前一篇文章auction.dwt-拍卖商品首页auction_list.dwt-拍卖商品详细页brand.dwt-商品品牌页brand_list.dwt-品牌列表页catalog.dwt-所有商品分类列表页category.dwt    -商品列表页compare.dwt   -商品比较页exchange_goods.dwt-积分商品详细页exchange_list.dwt-积分商品首页flow.dwt-购物车和购物流程页gallery.dwt   -商品相册页goods.dwt    -商品详情页group_buy_goods.dwt-团购商品详细页group_buy_list.dwt-团购商品首页index.dwt   -商城首页links_apply.dwt-在线申请友情链接页message.dwt-信息提示页(错误处理等)message_board.dwt-留言板页面myship.dwt-配送方式页pick_out.dwt-选购中心页quotation.dwt-报价单页面receive.dwt-收货确认信息页respond.dwt   -在线支付提示信息页secarch.dwt   -商品搜索页snatch.dwt   -夺宝奇兵页tag_cloud.dwt-标签云页topic.dwt-专题首页user_clips.dwt-用户中心页(包含:欢迎页,我的留言,我的标签,收藏商品,缺货登记列表,添加缺货登记等)user_passport.dwt-用户安全页(包含:会员登录,会员注册,找回密码等)user_transaction.dwt-用户中心页 (包含:个人资料,我的红包,添加红包,我的订单,订单详情,合并订单,订单状态,商品列表,费用总计,收货人信息,支付方式,其他信息,会员余额)wholesale_list.dwt-批发活动列表页library 库文件说明ad_position.lbi – 广告article_category_tree.lbi – 文章分类树auction.lbi – 拍卖商品bought_goods.lbi - 购买过此商品的人购买过哪些商品brand_goods.lbi - 品牌商品brands.lbi – 所有品牌cart.lbi - 购物车cat_articles.lbi – 分类下的文章cat_goods.lbi - 分类下的商品category_tree.lbi - 商品分类树categorys.lbi – 所有小类+商品数量comments.lbi - 用户评论comments_list.lbi – 评论列表consignee.lbi - 收货人信息email_list.lbi – 邮件订阅exchange_hot.lbi – 积分商城热卖商品exchange_list.lbi – 积分商城商品列表filter_attr.lbi – 扩展属性goods_article.lbi – 商品相关文章列表goods_attrlinked.lbi – 属性关联商品goods_fittings.lbi – 相关配件列表goods_gallery.lbi – 商品相册goods_list.lbi - 商品列表goods_related.lbi – 相关商品列表goods_tags.lbi – 商品标签group_buy.lbi – 团购商品help.lbi - 帮助内容history.lbi - 历史记录invoice_query.lbi - 发货单查询member.lbi - 会员登录区member_info.lbi - 会员信息myship.lbi – 收货信息new_articles.lbi – 最新文章online.lbi – 在线用户order_query.lbi – 订单查询order_total.lbi – 订单费用总数page_footer.lbi -页面底部page_header.lbi -页面顶部pages.lbi - 列表分页price_grade.lbi – 价格区间promotion_info.lbi – 促销信息recommend_best.lbi – 精品推荐recommend_hot.lbi – 热卖商品recommend_new.lbi – 最新商品recommend_promotion.lbi – 特价商品relatetag.lbi -snatch.lbi – 夺宝奇兵

在lbi库文件中添加广告位的方法一般的广告位是写在dwt文件里的。也有人希望能直接写在lbi文件里,那么我们可以这样做:
先在后台发布好广告位和广告,记住这个广告位的ID,这里暂时假设该ID为2
然后修改 lbi 文件
在想显示广告位的地方加入下面代码即可,
{insert name='ads' id=2 num=1}
ECSHOP后台订单列表的商品缩略图尺寸在哪定义这里所说的“后台订单列表的商品缩略图”是指鼠标滑过订单号时弹出的那个浮动层里的商品缩略图。
下面是修改方法:
打开 /admin/templates/order_goods_info.htm 文件,将

<img src="{$goods.goods_thumb}" />


修改为

<img src="{$goods.goods_thumb}" width="100" height="100" />

width 和 height 就是缩略图的宽和高了,可以任意修改成你想要的数字。
ecshop模板如何修改?很多人在问这个问题,今天就跟大家详细说下。相信学完之后,你会很清楚如何修改ecshop模板,不管你是初学者还是程序高手。
1, ecshop的模板结构ecshop模板没什么大的结构,就是使用smarty引擎来展示数据。大概是这样的结构:php->smarty->dwt文件->lbi文件。1)在网站目录的themes里存放着各个模板,这里可以存放多个模板文件夹,也就是说,可以由多个模板,如果你存放多个模板,那么可以在后台自由切换。2)打开某个模板,会看到一堆的dwt文件和图片文件夹,这些就是模板文件了。这里的images是存放图片的,这个名字无所谓了,你自己随便取,同样,css文件的路径和名字也是随便取的,只要在模板文件里用对就行了。3)library文件夹这里存放的是一个个的库文件,也是模板文件共用的文件。类似于head.htm footer.htm一类的这些文件。你可以随意的使用这些文件。
2, 具体该如果做ecshop模板修改

1:如何修改网站”欢迎光临本店”languages\zh_cn\common.php文件中, $_LANG['welcome'] = ‘欢迎光临本店’;将他修改成你需要的字样。2:如何修改首页”热门搜索关键字”后台->系统设置->网店设置->显示设置->首页搜索关键字,修改他的内容,然后保存3:如何修改首页标题 “Powered by ECShop”includes/lib_main.php,找到$page_title = $GLOBALS['_CFG']['shop_title'] . ‘ – ‘ . ‘Powered by ECShop’;修改成$page_title = $GLOBALS['_CFG']['shop_title']就可以了。4:如何去除cshop底部查询信息的显示library/page_footer.lbi中,删除 {insert name=’query_info’}5:如何发布首页公告后台->系统设置->商店设置->网店信息->商店公告.填写你需要的公告就可以了.
6:如何发布站内新闻ecshop管理文章十分灵活,既可以管理帮助信息,也可以管理站内文章.站内新闻.1:增加文章帮助信息后台->文章分类->增加文章分类->(选择)网店帮助分类-> 填写分类的名称xxx后台->文章列表->增加文章->选择网店帮助分类(xxx)->发布文章2:增加站内信息,站内新闻后台->文章分类->增加文章分类->增加一个文章顶级分类news后台->文章类表->增加文章->选择分类news->发布文章7:如何修改ecshop网站logo用你的logo图片替换/themes/default/images/logo.gif中图片就可以了8:如何修改产品图片的大小在ecshop/themes/default/style.css中,找到.goodsItem .goodsimg{width:100px; height:100px; border:4px solid #eef8ff; margin-bottom:4px;}就可以控制产品图片的大小.9:如何管理首页flash播放器后台 -> flash播放器管理 -> 增加自定义,你就可以上传和控制图片的位置10:怎么手动修改支付方式排列顺序数据库表中,找到payment表,pay_order字段就是用来控制顺序的,你如果想让A支付方式排在第一,那么你需要修改该字段的值稍微大一些。11:如何去除ecshop产品详细页产品电击率模板文件中,打开goods.dwt,删除{$lang.goods_click_count}:{$goods.click_count}12:首页模板在哪个文件,头部模板,底部模板个什么文件名称
首页模板在为index.dwt, 头部模板在library/page_header.lbi,底部文件在library/page_footer.lbi13:网站关闭了注册,如何修改“该网店暂停注册”字样languages\zh_cn\common.php 中$_LANG['shop_register_closed'] = ‘该网店暂停注册’;修改该文字就可以了14:收货人详细信息js弹出框的提示脚本在哪个文件languages\zh_cn\shopping_flow.php [比如 $_LANG['flow_js']['country_not_null'] = ‘请您选择收货人所在国家!’15:网站公告代码段在那里index.php文件中, $smarty->assign(’shop_notice’, $_CFG['shop_notice']); // 商店公告代码段控制公告16:如何修改产品的库存商品管理 -> 商品列表 -> 选中(库存),编辑就可以了.17:如何修改ecshop表的前缀修改data/config.php下的$prefix = “ecs_”;将ecs_修改成你需要的前缀.其次,在数据库中,修改表名比如ecs_goods修改为”xxx_goods”;18:如何修改ecshop导航栏目名称后台 -> 系统设置 -> 自定义导航栏 -> 编辑 -> 修改导航栏名称19:如何将最新产品栏目显示在导航栏里面?后台 -> 系统设置 -> 自定义导航栏 -> 增加自定义导航,在链接的栏目中输入”search.php?intro=new”20:如何更换ecshop模板比如新模板“test”,你将放在themes目录下,形成的路径为themes/test,然后在后台 -> 模板管理 -> 模板选择 ,起用你新加的模板就OK了。21:ecshop产品相关的图片有那几种$goods_img = ”; // 初始化商品图片$goods_thumb = ”; // 初始化商品缩略图$original_img = ”; // 初始化原始图片$old_original_img = ”; // 初始化原始图片旧图22:如何修改“支付方式”显示顺序打开ecs_payment表,如果你想让他显示在前面,你将设置pay_order值小一些,比如想让“支付宝”排第一,“快钱”排第二,你就可以设置支付宝pay_order=1,快钱pay_order=223:详细页面的积分详细页面的积分在模板 {$lang.goods_give_integral}{$goods.give_integral} {$points_name}中来控制的24:如何修改产品缩略图大小后台 -> 系统设置 -> 网店设置 -> 显示设置 -> 缩略图宽度.,当然你也可以设置缩略图高度25:如何设置ecshop货币格式和日期格式。后台 -> 系统设置 -> 网店设置 -> 显示设置 -> 货币格式(¥%s元)或者时间格式(Y-m-d H:i:s)26:如何开取和关闭ecshop登陆验证码后台 -> 系统设置 -> 验证码管理 ,在这里你可以操作各种验证码,开启和关闭27:如何修改个人帐户信息里面,出生年月的范围{html_select_date field_order=YMD prefix=birthday start_year=-60 end_year=+1 display_days=true month_format=%m day_value_format=%02d time=$profile.birthday}start_year=-60意思是从今天开始,推前面60年。 end_year+=1就是今年开始,往后推一年。就是表示这个范围。如果你需要更大的范围,将他们修改的更大一些。比如 start_year=-100,end_year+=100。这样范围够大了把。呵呵28:ecshop中的模板中如何包含模板查看includes/cls_template.php中,发现php中的include方式在smarty中依然有用. {include file=’library/dd.lbi’}所以,你用include方式,就可以在ecshop中的lbi中包含lbi29:如何调整ecshop flash播放器播放速度// 0xffffff:文字颜色|1:文字位置|0×0066ff:文字背景颜色|60:文字背景透明度|0xffffff:按键文字颜 色|0×0066ff:按键默认颜色|0×000033:按键当前颜色|8:自动播放时间(秒)|2:图片过渡效果|1:是否显示按钮|_blank:打 开窗口var swf_config = “|2|||0xFFFFFF|0xFF6600||2|3|1|_blank”以上表明,后面的2是控制速度的,如果你感觉他快了。你就把2修改成比2大的数。这样ecshop flash播放器速度就会慢些30:ecshop2.7.0首页轮换图片如何管理后台 -> 系统设置 -> 首页主广告管理 -> 系统默认,自定义。。。在这里。你可以进行首页flash图片管理32.ecshop订单中,哪个字段是控制折扣的order_info表格中,discount字段控制折扣。33:如何显示销售排行:显示销售排行,首先你需要有交易的定单,而且该定单已经交易完成,并且该定单中的产品库存不为零.如果库存为零,还是不能显示.34:Notice: Undefined variable: _LANG in D:\cms\new\includes\init.php on line 179错误如何解决认真检查语言包require(ROOT_PATH . ‘languages/’ . $_CFG['lang'] . ‘/common.php’);文件是否存在,或者遗漏35:ecshop flash播放器文件和图片在哪个文件夹里面flash播放器程序在data\flashdata,图片在data\afficheimg里面
经常可以看到ecshop的dwt文件里面有“<!– TemplateBeginEditable name=”doctitle” –>和<!– #BeginLibraryItem “/library/page_header.lbi” –><!– #EndLibraryItem –>”这么一段代码,有很多朋友误认为只是注释代码,这里首先来介绍一下#BeginLibraryItem这段代码。可以看到后面有 “page_header.lbi“这个.lbi文件是一个库文件,打开后发现里面就是一些html代码,index.dwt为模板,那么这个.lbi可 以理解为模板index.dwt的子模板,.lbi专门供别的的dwt模板导入的子模板. 那么 TemplateBeginEditable这个又是干什么用的呢? 很多人知道这个是可编辑区域的意思,意思就是在TemplateBeginEditable 和 TemplateEndEditable之间的位置是可编辑区域,具体的我们来举个例字。首先我们到ecshop 管理员后台的模板管理->设置模板里面可以看到以下这个可以看到上面的默认选择了首页模板,假如当你将 商品分类树 选择为右边主区域 点击确定之后 清楚缓存,在刷新首页这是你会发现,原来的 商品分类树 从左边跑到右边了。在上面的下拉框中我们看到只有三个选择,右边主区域,左边主区域,广告位,如果你想多加几个选项,那么很简单,只要你在你要改的模板内 多加上几个就行了,假如你要在index.dwt模板添加   “左上角主区域”,和“右下角主区域”,那么你可以在index.dwt 里面加入<!– TemplateBeginEditable name=”左上角主区域” –><!– TemplateEndEditable –><!– TemplateBeginEditable name=”右上角主区域” –><!– TemplateEndEditable –>这是你再到后台,模板设置里面看首页的选项中就有这个选项下面我来讲解一下怎么制作自己的模板, 我拿index.dwt为例, 首先在\themes\default\下将index.dwt文件拷贝一份改名为home.dwt在<body>里面加一句话 “这是自己定义的home.dwt模板” 以方便调试, 同样在根目录下的index.php文件拷贝一份改名为home.php里面加一行echo ‘这是自己定义的home.php’; 代码以便调试 同时把$smarty->display(‘index.dwt’, $cache_id);改为$smarty->display(‘home.dwt’, $cache_id);然后 清楚缓存 在浏览器通过http://localhost/ecshop/home.php执行你会发现这个页面跟首页一样,只是多了一段 “这是自己定义的home.php 这是自己定义的home.dwt模板” 文字。 当然home.php 和home.dwt 文件里面的内容可以自己定义.当你再到后台模板管理->设置模板 里面的 选择模板下拉框选项中没有你加的home模板,这时你就要在\admin\includes\lib_template.php里配置一下。在代 码”$template_files = array(‘index.dwt’, “ 加上你的模板”$template_files = array(‘home.dwt’,'index.dwt’,“ ,告诉系统有home.dwt这么一个模板,其次在$page_libs = array( 这个二位数组里面的 ‘index’ => array( 这个数组拷贝一份,改名为home ,意思就是告诉系统你这个home模板里面可以导入哪些.lbi文件.这点配置还不够,你还要在\languages\zh_cn \admin/template.php语言包里面加一行$_LANG['template_files']['home'] = ‘Myhome模板’;代码.然后你再到后台模板管理->设置模板可以看到如下结果你会发现下拉框中多了一个Myhome模板选项,当你点击旁边的确定按钮时会报错,这是因为你还有一个xml文件没修改,打开 themes\default\libs.xml文件,将 <file name=”index.dwt”> 节点内的代码拷贝一份把节点名改为<file name=”home.dwt”>这时你再来重复上次的操作点击旁边的确定,就不会报错了。接下来我们制作.lbi库文件首先我们在\themes\default\library\目录下新建一个home.lbi文件 里面输入”这是我自的lbi文件”然后在\admin\includes\lib_template.php文件里面,你刚才新加的’home’ => array(home数组里面 添加你的home.lbi 既在这个数组末尾加’/library/home.lbi’ => 0 同样像修改模板一样在\languages\zh_cn\admin\template.php 里面加入一行 $_LANG['template_libs']['home'] = ‘Myhome库文件’; 代码 这时你到后台 模板管理->库项目管理 你就会发现刚刚你加的库文件出来了。里面代码可以自己修改这时候你再到 模板管理->设置模板->选择Myhome模板 确定后,下面可以发现你要编辑的lbi出来了,默认是非可编辑区库文件如果你要变为可选择项那么你可以到\themes\default\libs.xml文件里找到刚才你加的   <file name=”home.dwt”><region name=”左边区域”>里面加上<lib>home</lib>你再回来看就可以了。记得要把后面对应的显示复选框勾选 上,否则你保存不了你的选择。这时你再来访问http://localhost/ecshop/home.php 你会发现 “这是我自的lbi文件” 文字出来了。另外需要补充一下的遵循如下3步骤1 在library 里面新建 lbi 文件,比如 phpsir.lbi , 请设置 777,到后台库项目里面就能看到和可以编辑 phpsir.lbi
2 修改 admin/includes/lib_template.php 里面的 $page_libs 变量3 在 libs.xml 里面找对应模板dwt文件,里面写入 <lib>phpsir</lib>到后台模板设置,就可以调整此块内容居于左右位置了。
页: [1]
查看完整版本: ecshop模板文件解说及部分代码修改实例详解