问题描述:8 V, q+ I- H1 m6 ] k0 {9 g' H
4 C n& C2 m. F- D4 j6 y商品列表页顶部有一个“精品推荐”,但是在商品详情页默认是没有的,, H. A2 K2 N6 }5 m4 o/ i
我想在商品详情页也显示该商品所属类别下的“精品推荐”,该如何修改呢??* ?6 D8 Y" I( t8 n# }/ ?7 H
6 B8 A/ N6 O! i% q% L, K修改方法:; {7 G- F0 {( w$ r* \0 _, E+ C, |
注:以下修改方法是在ECSHOP 2.7.2 版 官方默认模板基础上实施的。& x8 Y+ Y& Z7 z
, u/ j/ U# V; l* Z |
第一步: 修改 goods.php 程序文件
2 w8 F) G+ E/ A: N# [9 @8 B) ?" R* K, Z6 j
找到下面这行代码 $smarty->assign('goods_rank', get_goods_rank($goods_id)); // 商品的销售排名 |
6 U5 o/ L0 V5 m然后再这行代码下面增加两行
5 ?1 F6 o3 a. ]$children = get_children($goods['cat_id']);: a; f2 @& K |( C9 G$ K
$smarty->assign('best_goods', get_category_recommend_goods('best', $children)); |
0 E0 ?! ~ o; ~2 @( e" j4 c第2步: 修改模板文件 /themes/default/goods.dwt 3 z' U9 ]" B; G' ]: Y, @) u
+ J# k; I6 Y# A% s! }: M/ u
找到
/ l0 k- H: o7 Z6 O/ a3 o/ T6 N' r在它下面增加一行代码7 \+ n& B" B3 x/ a8 l& p
<!-- #BeginLibraryItem "/library/recommend_best.lbi" --><!-- #EndLibraryItem --> |
6 K. n- s; W& Y2 | T/ ^这样修改以后(记得到后台清除缓存),就可以在商品页看到“精品推荐”了,
9 B( v/ X+ i+ W" G8 R4 f3 z- }5 n8 g: P7 ~) @ K
但是默认的最多只显示3个,
- t, P, i, ]0 s" L: L原因是“关于商品详情页的精品推荐数量”在 数据表:ecs_template 里没有相应记录,所以就会取默认值 3 ,- ?3 `$ q- w0 ]; G' @$ c% e
' o. W! D4 h# Q2 m, l6 W
那么,我们可以通过修改默认值的方法来达到显示4个或者更多个,
: f( i: q; U: s) C. Y' J8 `" J如果你想显示大于3个,那么继续进行第3步的修改。4 ]8 i. R I( i" g d" l
) `4 }0 M$ H* y& f7 B/ U第3步: 打开 includes/lib_main.php 文件) I$ @. ] U4 Z e8 z
! C$ `# M& `2 P5 u3 D& N5 q$ }
找到下面这行代码
" Z. m3 D2 w7 C1 l/ T1 x" h, T$num = isset($static_page_libs[$template][$lib]) ? $static_page_libs[$template][$lib] : 3; | & `- z+ S1 D5 U
修改为$num = isset($static_page_libs[$template][$lib]) ? $static_page_libs[$template][$lib] : 4; |
# j7 ]/ {* F: v$ M' a2 d然后,到后台清除缓存,看看是不是显示4个了。- k$ X( o: |6 Z2 c6 g
/ R9 t) i' T8 E7 X
当然,前提是该类别下确实存在4个推荐商品。3 e8 U* j! n* S# W4 u4 E
. L- V5 ]( o( ^( G5 ~
效果图如下:
$ s* r% H! j' R1 h/ f
|