新聞中心
如何在ECSHOP前臺(tái)首頁(yè)商品列表顯示每個(gè)商品的評(píng)論數(shù)量和等級(jí)的完美解決方案
站長(zhǎng)朋友們都知道用開源的Ecshop搭建的電商網(wǎng)站首頁(yè)的商品都是沒(méi)有顯示商品等級(jí)和會(huì)員購(gòu)買后的評(píng)價(jià)數(shù)量的。今天小編的一位站長(zhǎng)朋友看到了淘寶上的商品都是有評(píng)價(jià)數(shù)量和商品等級(jí)的,于是他也想做成這樣的效果,因?yàn)樵谏唐废戮陀性u(píng)價(jià)和商品等級(jí)就可以直接的吸引住購(gòu)買的客戶,從而帶動(dòng)銷量。一般商品的評(píng)價(jià)都是在評(píng)價(jià)里才能看到,這樣就不能和商品一一對(duì)應(yīng)了。但是在每一個(gè)商品下顯示就能具體到某一個(gè)商品,那樣效果極佳。首先小編先為各位截圖看下之前的商品顯示效果。如下圖所示:
[caption id="attachment_15278" align="alignnone" width="550"] ecshop[/caption]
這位站長(zhǎng)朋友要的效果是在價(jià)格下面再顯示出評(píng)價(jià)數(shù)和等級(jí)。小編經(jīng)過(guò)一個(gè)晚上的研究和分析終于找到了完美的解決方案。下面小編為大家分享下這個(gè)成果吧。
第一步找到:根目錄下的欄目頁(yè)文件category.php 找到 category_get_goods() 函數(shù)部分
$sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, g.market_price, g.is_new,
把448行-445行代碼修改為以下代碼:
$sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, g.market_price, g.is_new, g.is_best, g.is_hot, g.shop_price AS org_price, ' .
"IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, g.promote_price,g.goods_type,"."IFNULL(AVG(r.comment_rank),0)AScomment_rank,IF(r.comment_rank,count(*),0)AScomment_count,".'g.promote_start_date,g.promote_end_date,g.goods_brief,g.goods_thumb,g.goods_img'.'FROM'.$GLOBALS['ecs']->table('goods') . ' AS g ' .'LEFT JOIN ' . $GLOBALS['ecs']->table('member_price') . ' AS mp ' ."ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' " .' LEFT JOIN '. $GLOBALS['ecs']->table('comment') .' AS r '.'ON r.id_value = g.goods_id AND comment_type = 0 AND r.parent_id = 0 AND r.status = 1 ' ."WHERE $where $ext group by g.goods_id ORDER BY $sort $order";
以上代碼可能有些多有點(diǎn)負(fù)責(zé) 這些都是SQL語(yǔ)句直接從數(shù)據(jù)庫(kù)中抽出對(duì)應(yīng)的等級(jí)和評(píng)價(jià)。所以修改的時(shí)候不能復(fù)制錯(cuò)誤了。不然就不能實(shí)現(xiàn)從數(shù)據(jù)庫(kù)中抽出的對(duì)應(yīng)的數(shù)據(jù)。
繼續(xù)往下找在512代碼部分:
$arr[$row['goods_id']]['url']= build_uri('goods', array('gid'=>$row['goods_id']), $row['goods_name']);
在這行代碼下添加以下代碼:
$row['comment_rank']=ceil($row['comment_rank'])==0?5: ceil($row['comment_rank']);
$arr[$row['goods_id']]['comment_rank']=$row['comment_rank'];
$arr[$row['goods_id']]['comment_count']=$row['comment_count'];
以上都從數(shù)據(jù)庫(kù)中抽出來(lái)數(shù)據(jù)了,緊接著就是修改模板文件用來(lái)顯示的。
第二步:找到themes/default/library/goods_list.lbi 文件。
找到
<ahref="javascript:collect({$goods.goods_id});"class="f6">{$lang.btn_collect}</a>
大概在87行代碼部分在它上面增加
<imgsrc="images/stars{$goods.comment_rank}.gif" style="width:78px;height:15px;" /><br>
評(píng)論數(shù):{$goods.comment_count}<br>
按照以上代碼全部替換后保存上傳替換以前的文件。然后登陸網(wǎng)站后臺(tái)清空緩存這時(shí)候我們登陸網(wǎng)站前臺(tái)首頁(yè)刷新如下圖所示:
[caption id="attachment_15279" align="alignnone" width="550"]
ecshop[/caption]
果然實(shí)現(xiàn)了首頁(yè)商品列表頁(yè)顯示每個(gè)商品的等級(jí)和評(píng)價(jià)數(shù)量了。
無(wú)憂主機(jī)相關(guān)文章推薦閱讀:
ECSHOP添加自定義模塊
淺談ECSHOP敏感詞匯設(shè)置開發(fā)思想
解決ECSHOP后臺(tái)重新發(fā)布商品圖片產(chǎn)生新圖片不覆蓋原圖的完美解決方案
解決最新ECSHOP2.7.3存在賣家打印快遞單時(shí)不顯示收貨人省市區(qū)的完美解決方案
本文地址:http://m.love62.cn/ecshop/15277.html
![1](/wp-content/themes/starow_z/img/o-1.png)
![1](/wp-content/themes/starow_z/img/o-2.png)
![1](/wp-content/themes/starow_z/img/o-3.png)
![1](/wp-content/themes/starow_z/img/o-4.png)
![1](/wp-content/themes/starow_z/img/o-5.png)
![1](/wp-content/themes/starow_z/img/o-6.png)
![1](/wp-content/themes/starow_z/img/o-7.png)