1、修改 ECSHOP 的模板大全ECSHOP 的广告链接地址形式为“affiche.php?ad_id=1把它修改为下面代码即可在 ECSHOP 首页调用标签云的所有标签经常看到有人问,如何把 ECSHOP 标签云调用到首页呢,现在就来说一下相关的修改教程。老规矩,还是以官方默认模板为例。首先,让我们来打开 /index.php 文件找到在它下边增加 PHP 代码然后,我们再打开 模板文件 /themes/default/index.dwt 鼠标定位到你想显示标签云的地方,加入下面代码标签云| if $tag.bold$tag.tag_words|escape:htmlelse$tag.tag_
2、words|escape:html/if$lang.no_tag$smarty-assign(shop_notice, $_CFGshop_notice); / 商店公告最后,到后台更新下缓存,就可以了。ECSHOP 帮助中心如何限制文章条数有的站长的帮助中心的文章可能会很多,都显示在帮助中心里, 感觉会很乱。这里教你一个“在 ECSHOP 帮助中心限制文章显示条数”的方法,例如只显示每个小类的前 5 篇文章。为了照顾大多数站长,本教程倾向于在模板里修改实现。以官方默认模板为例,打开 /themes/default/library/help.lbi 文件将 $item.short_title修
3、改为if $smarty.foreach.help_list.iteration lt 6$item.short_title/if如何修改 Ecshop 页面底部的在线人数建站之初,网站的在线人数肯定不会很多,那么我们可以稍微修改下 ECSHOP 的程序,让页面底部显示的在线人数 翻几番。具体方法如下:打开 /includes/lib_insert.php 文件找到下面代码$online_count = $GLOBALSdb-getOne(“SELECT COUNT(*) FROM “ . $GLOBALSecs-table(sessions);将之修改为:$online_count = $G
4、LOBALSdb-getOne(“SELECT COUNT(*) FROM “ . $GLOBALSecs-table(sessions)*15;这样,你的 ECSHOP 商城显示的在线人数就会多 15 倍,呵呵。当然你也可以将 15 改成 100,这样就会多 100 倍。在 ECSHOP 首页显示积分商城里的商品1)、首先打开 index.php 文件在最末尾增加下面函数,注意千万不要写到 “?” 的外面去,要加在“?”的前面。/* 获得积分商城热门商品* param int $limit 列出条数* param int $ishot 是否只显示热销* return array*/funct
5、ion index_get_exchange($limit=3,$ishot=0)/* 获得热门积分商品列表 */$sql_ishot=$ishot ? “ AND eg.is_hot=1 “ : “;$sql = SELECT g.goods_id, g.goods_name, g.goods_name_style, eg.exchange_integral, . g.goods_type,g.goods_brief, g.goods_thumb, g.goods_img, eg.is_hot . FROM . $GLOBALSecs-table(exchange_goods) . AS e
6、g LEFT JOIN . $GLOBALSecs-table(goods) . AS g ON g.goods_id = eg.goods_id . WHERE eg.is_exchange = 1 AND g.is_delete = 0 . $sql_ishot . limit .$limit;$res = $GLOBALSdb-getAll($sql);$arr = array();foreach($res AS $idx = $row)$arr$idxname = $rowgoods_name;$arr$idxgoods_brief = $rowgoods_brief;$arr$idx
7、goods_style_name = add_style($rowgoods_name,$rowgoods_name_style);$arr$idxexchange_integral = $rowexchange_integral;$arr$idxtype = $rowgoods_type;$arr$idxgoods_thumb = get_image_path($rowgoods_id, $rowgoods_thumb, true);$arr$idxgoods_img = get_image_path($rowgoods_id, $rowgoods_img);$arr$idxurl = bu
8、ild_uri(exchange_goods, array(gid=$rowgoods_id), $rowgoods_name);return $arr;然后继续在 index.php 文件中 找到 $smarty-assign(shop_notice, $_CFGshop_notice); / 商店公告在它下边另起一行增加如下代码$smarty-assign(goods_exchange_list,index_get_exchange(6,0); /积分商城如果你想只显示热销的积分商品,只需将上面代码稍作修改即可$smarty-assign(goods_exchange_list,index
9、_get_exchange(6,1); /积分商城2)、下面继续修改模板文件 themes/default/index.dwt在你想显示积分商城商品的地方,加入下面代码段积分商城$exchange_goods.goods_style_name$exchange_goods.goods_name$lang.exchange_integral$exchange_goods.exchange_integral3)、到后台清除下缓存,然后刷新首页就能看到效果了,效果图如下ECSHOP 模板代码不能使用 is div by 的解决办法很多制作模板的朋友可能已经发现了在 ECSHOP 模板代码中 使用if
10、 $vars is div by 4 . /if 来判断$vars 是否能被 4 整除的时候,系统会报错。原因是 ECSHOP 的 SMARTY 是经过 ECSHOP 官方二次修改过的,不是原原本本的 SMARTY。这种情况,我们可以用另一种代码来解决,那就是 mod , MOD:是取余数的意思例如:if $vars mod 4 . else . /if在 ECSHOP 首页显示各个商品的品牌名称为了讲解方便,为了照顾大多数人,本例教程以 2.7.2 官方默认模板 为准。其实这个品牌字段在程序里已经取出来了,只是在模板中没有调用而已。所以只要在模板中把那个品牌标签加上就可以了。1)、打开 /t
11、hemes/default/library/recommend_best.lbi 找到 在它上边增加一行if $goods.brand_name品牌:$goods.brand_name/if2)、打开 /themes/default/library/recommend_new.lbi ,修改方法同上3)、打开 /themes/default/library/recommend_hot.lbi ,修改方法也同上4)、打开 /themes/default/library/recommend_promotion.lbi ,找到$lang.promote_price$goods.promote_pri
12、ce在它上边添加一行代码if $goods.brand_name品牌:$goods.brand_name/if刷新看看,是不是多了一个品牌,如果刷新没有变化,请到后台清除缓存先。修改 Ecshop 底部版权的年份信息(2005-2010)本教程所说的年份信息,指的是页脚“版权所有”前面的年份,如下面红色部分所示 2005-20110 ECSHOP 版权所有,并保留所有权利。后面的“2010” 能随着服务器的年份而改变,但是前面的 2005 却始终不变。 比如:我的网店是 2007 年上线的, 我希望改成 2007-2010, 应该怎么改呢?打开 /languages/zh_cn/common.
13、php 文件找到$_LANGcopyright = “ 2005-%s %s 版权所有,并保留所有权利。“;将 2005 修改成 2007 即可怎样修改 Ecshop 站内快讯标题的长度(字数)这是一个 ECSHOP 使用中的小问题,但是群里和论坛里还是经常有人在问,下面共享一下。进入 后台 商店设置 显示设置, 找到“ 文章标题的长度 : ” ,修改输入框里的数字即可。将默认模板首页的 best,hot,new 三个水印删除掉注意:此教程只对 ECSHOP 默认模板有效,其他模板也许根本就没这几个水印1) 、打开 /themes/default/library/recommend_best.
14、lbi 文件将 删除即可2) 、打开 /themes/default/library/recommend_hot.lbi 文件将 删除即可3) 、打开 /themes/default/library/recommend_new.lbi 文件将 删除即可在 ECSHOP 首页显示商品总数和本月更新数1)、首先修改 /index.php 找到 assign_dynamic(index);在它后边添加一些代码 $sql=“select count(*) as goods_all from “. $ecs-table(goods); /商品总数$smarty-assign(goodsnum_all,$
15、db-getOne($sql);$time_month=mktime(0,0,0,date(m)-1,1,date(Y);$sql=“select count(*) as goods_month from “. $ecs-table(goods) .“ where last_update = “ . $time_month; /本月更新数$smarty-assign(goodsnum_month,$db-getOne($sql);2)、打开首页模板文件 index.dwt,在合适的地方调用,调用代码为 本商城共有商品 $goodsnum_all 件,本月更新 $goodsnum_month 件
16、如何去掉首页的商店公告不同的模板,具体的修改细节是不一样的,1)、如果你使用的是官方默认模板,请看下面打开 /themes/default/index.dwt 文件将下面代码部分删除即可$lang.shop_notice$shop_notice2)、如果你使用的是其他模板,打开 /themes/你的模板文件夹/index.dwt 搜索$shop_notice注意,搜索到该字符串以后,要观察它周围(前后都算)的一些 DIV 标签,把对应的 DIV 部分都删掉就可以了。如果你能看懂 HTML 代码,那应该很容易的。如何让 Ecshop 首页商品也显示市场价格首先要说明的一点是,也许你下载或购买的模
17、板已经实现了“首页商品显示市场价格” ,那么请不要诧异,此教程是针对没有实现此功能的模板而言的,例如官方默认模板。1) 、首先我们需要打开 /themes/default/library/recommend_best.lbi 文件找到在它上边增加一行代码$lang.market_price$goods.market_price2) 、接着打开 library/recommend_hot.lbi 和 library/recommend_best.lbi ,修改方法和上面第一步中的 recommend_best.lbi 相同。然后刷新一下首页(不用清除缓存) ,应该就看到市场价格了。给 ECSHO
18、P 商城增加一个加入 QQ 群的快捷按钮大家都知道,普通的加 QQ 群方法,一般是 先到 QQ 中查找群 输入群号码 发验证信息,等待群主或管理员通过,步骤比较繁琐。现在简单了,我们可以直接在网页上放一个按钮,用户点击该按钮,便可以直接加入该 QQ 群,省略了一些繁杂的步骤。用户体验更友好一些。以下教程讲解怎么给 ECSHOP 商城系统也加上如此功能。以官方默认模板为例。打开 themesdefaultlibrarypage_footer.lbi 找到在它上边增加 ECSHOP120 官方 QQ 群: 31497022注意:将 31497022 修改成你的群号轻松实现 Ecshop 商城多语言
19、切换很多人都想让自己的 ECSHOP 商城实现多语言支持(能够方便的在首页切换多语言)。其实实现起来也挺简单的。效果图如下:下面就说一下修改方法。1)、首先打开 includds/init.php 文件,找到 require(ROOT_PATH . languages/ . $_CFGlang . /common.php);与$smarty-assign(lang, $_LANG);先将这两行代码删掉。2)、找到 if (DEBUG_MODE if (!empty($_SESSIONlang)switch($_SESSIONlang)case zh_cn:$_CFGlang=“zh_cn“;b
20、reak;case zh_tw:$_CFGlang=“zh_tw“;break;case en_us:$_CFGlang=“en_us“;break;require(ROOT_PATH . languages/ . $_CFGlang . /common.php);$smarty-assign(lang, $_LANG);3)、修改 /themes/default/library/page_header.lbi 文件. 在 上边添加| 简体 | 繁体 | 英文在 Ecshop 首页上显示最新评论(评论内容if ($num 0)$sql .= LIMIT . $num;/echo $sql;$r
21、es = $GLOBALSdb-getAll($sql);$comments = array();foreach ($res AS $idx = $row)$comments$idxadd_time = $comments$idxadd_time = local_date($GLOBALS_CFGtime_format, $rowadd_time);$comments$idxuser_name = $rowuser_name;$comments$idxcontent = $rowcontent;$comments$idxid_value = $rowid_value;return $comme
22、nts;$GLOBALSsmarty-assign(my_comments,get_comments(10); / 10 条数据?最新评论$comments.content|truncate:21:“$comments.add_time第二步:在 ECSHOP 首页模板文件中,调用这个库文件打开 themes/default/index.dwt 文件,在 上面增加一行调用代码清除一下缓存在 ECSHOP 首页每个商品下显示已销售量问题:想在首页每个商品下显示“已销售 XX 个”,该如何操作呢?教程:第 1 步:打开文件 includes/lib_goods.php在该文件的末尾添加如下代码片段
23、 function get_buy_sum($goods_id) $sql = “select sum(goods_number) from “ . $GLOBALSecs-table(order_goods) . “ AS g ,“.$GLOBALSecs-table(order_info) . “ AS o WHERE o.order_id=g.order_id and g.goods_id = “ . $goods_id ;return $GLOBALSdb-getOne($sql);然后往上找到 317 行左右, 找到 $goods$idxbrand_name = isset($goo
24、ds_databrand$rowgoods_id) ? $goods_databrand$rowgoods_id : ;在它下面添加 $goods$idxbuy_num= get_buy_sum($rowgoods_id);最后就是通过在模板文件中调用了,如下这般调用if $goods.buy_num$goods.buy_numelse0/if删除 RSS 文件(feed.php)里的 Ecshop 版权信息RSS 文件 (feed.php 或 feed.xml) 里面也包含一些 ECSHOP 官方预留的版权信息,主要有下面几处:或http:/今天有网友问我怎么去掉这些?下面我就把删除这些版权
25、信息的教程公布在这里:打开 /includes/cls_rss.php 文件找到 . “n“ .把它删除 (注意:别删多了)继续搜索找到 $this-output .= (string) . $this-creator . . “n“;同样也删除然后,刷新一个 FEED.PHP ,看是不是没有了Ecshop 首页精品推荐(新品上市、热卖商品)的数量在哪设置虽然只是一个很小的 ECSHOP 设置问题,但是 QQ 群里经常有人问到类似问题,所以将修改教程共享在这里。方法:进 后台 模板管理 设置模板, 找到 “精品推荐、新品上架、热卖商品”打头的三行,修改每行对应“数量” 的那个输入框里的数字即可
26、。Ecshop 模板修改_删除商品名称后边的省略号(三个点)商品标题超过后台设置的显示字数时,会显示省略号。请问怎样修改,才会不显示省略号呢?以下是一种彻底的修改方法,修改完后,将永远不再显示 生活好 .打开 /includes/lib_base.php 文件找到 if ($append 将之删除掉,就可以了。记得到后台清除下缓存。如何删除 Ecshop 默认模板左下角的 LOGO 图标用户有两种选择方案:(1)、用自己的 Logo 图标替换掉原来的:自己新设计一个 LOGO 图片,并且命名为 logo1.gif。并且通过 FTP 软件上传到 “themesdefaultimages” 目录下
27、,覆盖原来的同名文件。(2)、删除 ECSHOP 默认的 Logo 图标:打开 “themesdefaultstyle.css” 文件找到 #footerbackground:url(images/logo1.gif) no-repeat 5% 50%; padding-left:200px; width:760px; margin:10px auto;修改为#footerpadding-left:200px; width:760px; margin:10px auto;将 ECSHOP 分类树修改成一行两个经常看到有朋友问“怎么将 ECSHOP 分类树显示为一排(行)两个”,也就是如下面的效
28、果图:这个 ECSHOP 模板修改问题,主要就是靠修改 CSS 来实现。但是不同模板的具体 CSS 代码是不一样的,所以不同模板的具体修改方法也是不完全相同的,没有通用的修改方法。下面教程是以 2.7.2 版 官方默认模板 为例 进行讲解的,已经测试通过,完全兼容 IE6,IE7,火狐。其他模板请参照举一反三。-打开 /themes/default/style.css 文件找到 #category_tree ddpadding:3px 0 3px 10px;将它修改为#category_tree ddpadding:3px 0 3px 10px;width:40%;overflow:hidde
29、n;float:left;white-space:nowrap;word-break:keep-all;display: inline;然后再打开 /themes/default/library/category_tree.lbi 文件在 下面增加一行代码在 ECSHOP 首页的发货查询里显示省市区地址信息问题描述:默认的 ECSHOP 系统,首页发货查询只显示订单号和发货单号,如何将送货地址中的“省份+城市+区县” 都显示出来呢?下面是在 ECSHOP 2.7.2 官方默认模板基础上的修改教程:1、修改 index.php 文件将 $sql = SELECT o.order_sn, o.in
30、voice_no, s.shipping_code FROM . $GLOBALSecs-table(order_info) . AS o .修改为 $sql = SELECT o.province,o.city,o.district,o.order_sn, o.invoice_no, s.shipping_code FROM . $GLOBALSecs-table(order_info) . AS o .2、继续修改 index.php 文件找到 $all$keyinvoice_no = $shipping-query(string)$rowinvoice_no);在它下面增加几行代码$al
31、l$keyprovince=$GLOBALSdb-getOne(“select region_name from “.$GLOBALSecs-table(region).“ where region_id=“.$rowprovince);$all$keycity=$GLOBALSdb-getOne(“select region_name from “.$GLOBALSecs-table(region).“ where region_id=“.$rowcity);$all$keydistrict=$GLOBALSdb-getOne(“select region_name from “.$GLOB
32、ALSecs-table(region).“ where region_id=“.$rowdistrict);3、修改 /themes/default/library/invoice_query.lbi 文件找到$lang.order_number $invoice.order_sn在它下面增加一行模板标签代码$invoice.province-$invoice.city-$invoice.district到后台清除缓存后,刷新首页。请问 ECSHOP 首页站内快讯在哪里添加和修改?“添加新闻后在首页站内快讯处显示不出来?”、 “请问首页中站内快讯(最新文章)在后台哪个位置管理” 、“如何让发
33、布的文章进入首页站内快讯”等等诸如此类的问题,经常在论坛里看到一些朋友在询问。本 ECSHOP 教程就来讲解一下上述问题的解决办法:进入 ECSHOP 后台 文章管理 文章列表 添加新文章,输入文章标题、文章内容,发布一篇文章即可。不过有以下几个注意点很重要: 1) 、文章分类, 不能选择“系统分类及子分类”,要选择其他分类。如果不存在其他分类,请先建立2) 、文章重要性,要选择“置顶”。发布完文章后,记得到后台“清除缓存”。在 ECSHOP 首页增加一个浏览排行最近有看到朋友在 ECSHOP 论坛里提问: 如何在首页增加一个类似于“销售排行榜”的“浏览排行榜”,并且可以在后台的“模板设置”里
34、进行控制。由于系统默认是没有读取浏览排行的,所以这部分功能既得增加程序,又得增加模板。本教程是以 ecshop2.7.2 官方默认模板 为例进行讲解的。效果图如下:1)、将下面代码复制并保存到 一个新文件中,文件路径为: /themes/default/library/top10_click.lbi 浏览排行$goods.short_name$lang.shop_price$goods.price2)、修改 /includes/lib_goods.php 文件在最下面增加一个函数/* 调用浏览排行榜* access public* return array*/function get_top1
35、0_click()$sql=“SELECT goods_id, goods_name, shop_price, goods_thumb “ .FROM . $GLOBALSecs-table(goods).“ where is_on_sale = 1 AND is_alone_sale = 1 AND is_delete = 0 order by click_count desc limit 10“;$arr = $GLOBALSdb-getAll($sql);for ($i = 0, $count = count($arr); $i 0 ?sub_str($arr$igoods_name,
36、$GLOBALS_CFGgoods_name_length) : $arr$igoods_name;$arr$iurl = build_uri(goods, array(gid = $arr$igoods_id), $arr$igoods_name);$arr$ithumb = get_image_path($arr$igoods_id, $arr$igoods_thumb,true);$arr$iprice = price_format($arr$ishop_price);return $arr;3)、修改 /index.php 文件在 $smarty-assign(top_goods, g
37、et_top10(); / 销售排行下面另起一行增加 $smarty-assign(top_goods_click, get_top10_click(); / 浏览排行修改模板文件 /themes/default/index.dwt找到在它的前面增加4)、修改 /admin/includes/lib_template.php 文件在 /library/invoice_query.lbi = 0,上边增加一行代码/library/top10_click.lbi = 0,5)、继续修改语言包文件 /languages/zh_cn/admin/template.php 在 $_LANGtemplat
38、e_libstop10 = 销售排行;下边增加一行代码$_LANGtemplate_libstop10_click = 浏览排行;6)、修改 /themes/default/lib.xml 文件找到 top10并且在它下面另起一行,增加 top10_click7)、最后进入 后台 模板管理 设置模板, 是不是看到了期待已久的“浏览排行”,设置一下,并清除缓存,就 OK 了在 ECSHOP 首页顶部增加通栏广告位的方法ECSHOP 系统默认预留的广告位很少,如何才能在首页或者其他页面增加自己想要的广告位呢?下面就讲一讲方法。下面以“在 ECSHOP 首页顶部增加一个通栏广告”为例进行讲解。另外:
39、本例是在 ECSHOP2.7.2 官方默认模板基础上进行讲解的,其他模板及其他页面原理相同。第 1 步:进入 ECSHOP 后台 广告管理 广告位置,点击“增加广告位”按钮。广告位名称输入“首页头部通栏广告位”,广告位宽度输入“960”广告位高度输入“100”。点“确定”。第 2 步:然后进入“广告列表”,点击“添加广告”按钮,注意,广告位置下拉框 要选择 刚才第 1 步里添加的那个广告位,即“首页头部通栏广告位 960x100”。上传一张广告图片,点确定。第 3 步:打开首页模板文件 index.dwt 找到下面代码在它下面增加几行代码第 4 步:进入后台 模板管理 设置模板,选择首页模板。
40、到最下面找到“广告位”,点击“+”展开,在第一个下拉框里 选择 “首页头部通栏广告位(宽:960px)”在第二个下拉框里 选择 “首页头部通栏广告位 960x100”点击 “确定”,保存,然后到首页看看,是不是通栏广告已经显示出来了在 ECSHOP 首页的精品/新品/热销里显示商家备注问题:我想将后台编辑商品时录入的“商家备注”信息显示在 ECSHOP 商城首页的“精品推荐/新品上市/热卖商品”几个栏目里,请问需要怎么修改呢?修改方法:1、修改 /includes/lib_goods.php 文件 (最好使用 editplus)将“promote_start_date, promote_end
41、_date, g.goods_brief, g.goods_thumb, g.goods_img, RAND() AS rnd “ .修改为“promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, g.goods_img,g.seller_note, RAND() AS rnd “ .接着,找到if (in_array($rowgoods_id, $type_arraybest)在它上面加一行代码$goods$idxseller_note = $rowseller_note;2、下面修改 ECSHOP 模板文件,以
42、官方默认模板为例(其他模板同理)打开 /themes/default/library/recommend_best.lbi 文件在 $goods.short_style_name下面增加一行代码$goods.seller_note3、然后打开 /themes/default/library/recommend_hot.lbi 文件,修改方法同上4、然后打开 /themes/default/library/recommend_new.lbi 文件,修改方法同上Ecshop 模板制作_让首页“站内快讯”垂直滚动显示(无缝滚动)Ecshop 首页“站内快讯”默认是静止不动的,很多人想让它垂直滚动显示
43、,这里简要说一下方法如果只是要简单的垂直滚动 用 html 标签中的 就能实现,但是不能实现无缝结合。如果想要无缝垂直滚动,就需要一点 JS 代码的支持。下面就讲一讲如何实现“站内快讯”垂直无缝滚动显示:将 library/new_articles.lbi 文件内容完全替换为下面代码即可:(经测试完全兼容 IE6,IE7,FIREFOX)注意:下面方法已经在官方默认模板基础上测试完全通过,其他模板没做测试。$article.cat_name $article.short_title|truncate:10:“.“:truevar speed=30;var ARTUP=document.getE
44、lementById(artup);var ARTUP1=document.getElementById(artup1);var ARTUP2=document.getElementById(artup2);var ARTUP1ul=document.getElementById(artup1ul);var result = “;for(var i=0; i如何去除 Ecshop 的底部版权(Powered by ECShop)1、首先修改模板文件,以官方默认模板为例,打开 ECSHOP 模板文件夹(themes/default/library/)下的 page_footer.lbi 文件。
45、删除下面这一行foreach from=$lang.p_y item=pv$pv/foreach$licensed2、修改 JS 文件打开 /js/common.js 文件,找到下面代码并删除之 onload = function()var link_arr = document.getElementsByTagName(String.fromCharCode(65);var link_str;var link_text;var regg, cc;var rmd, rmd_s, rmd_e, link_eorr = 0;var e = new Array(97, 98, 99,100, 101
46、, 102, 103, 104, 105, 106, 107, 108, 109,110, 111, 112, 113, 114, 115, 116, 117, 118, 119,120, 121, 122);tryfor(var i = 0; i $rowgoods_id), $rowgoods_name);(注:这里一定要谨慎,一定要找准位置,很多同志都是绊倒在这里的,如果你没修改过这个文件的话,大概是在 394 行的位置,找错了就出不来了)下面增加代码 /* 促销时间倒计时 */$time = gmtime();if ($time = $rowpromote_start_date var daysms = 24 * 60 * 60 * 1000var hoursms = 60 * 60 * 1000var Secondms = 60 * 1000var microsecond = 1000var DifferHour = -1var DifferMinute = -