 
- 帖子
- 179
- 积分
- 292
- 体力
- 183 点
- 金币
- 19
- 威望
- 0
- 来自
- 北京
|

[共享] ECSHOP商品详情页相关商品随机显示方法
ECSHOP商品详情页优化真是不易啊,最近想起来了这个办法,随机显示相关商品,网上找了N多教程,也没有弄成,最后看到一位高手发布的修改商品列表页产品随机显示的教程,修改了一下,竟然实现了,商品详情页相关商品的随机显示.
演示地址: http://www.tingmeiyunchan.com/goods-344.html
废话不讲了,看教程吧,其实非常简单.
找到 ecshop根目录 goods.php
默认模板第288行左右找到:- * 获得指定商品的关联商品
- *
- * @access public
- * @param integer $goods_id
- * @return array
- */
- function get_linked_goods($goods_id)
- {
- $sql = 'SELECT g.goods_id, g.goods_name, g.goods_thumb, g.goods_img, g.shop_price AS org_price, ' .
- "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ".
- 'g.market_price, g.promote_price, g.promote_start_date, g.promote_end_date ' .
- 'FROM ' . $GLOBALS['ecs']->table('link_goods') . ' lg ' .
- 'LEFT JOIN ' . $GLOBALS['ecs']->table('goods') . ' AS g ON g.goods_id = lg.link_goods_id ' .
- "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
- "ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
- "WHERE lg.goods_id = '$goods_id' AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ".
- "LIMIT " . $GLOBALS['_CFG']['related_goods_number'];
- $res = $GLOBALS['db']->query($sql);
复制代码 搜索大约在293行:
替换为下方代码即可.- * 获得指定商品的关联商品
- *
- * @access public
- * @param integer $goods_id
- * @return array
- */
- function get_linked_goods($goods_id)
- {
- $adcode=1;
- $sql = 'SELECT g.goods_id, g.goods_name, g.goods_thumb, g.goods_img, g.shop_price AS org_price, ' .
- "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ".
- 'g.market_price, g.promote_price, g.promote_start_date, g.promote_end_date ' .
- 'FROM ' . $GLOBALS['ecs']->table('link_goods') . ' lg ' .
- 'LEFT JOIN ' . $GLOBALS['ecs']->table('goods') . ' AS g ON g.goods_id = lg.link_goods_id ' .
- "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
- "ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
- "WHERE lg.goods_id = '$goods_id' AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ".
- $sql .= $adcode == 0 ? " $order" : " ORDER BY RAND()".
- "LIMIT " . $GLOBALS['_CFG']['related_goods_number'];
- $res = $GLOBALS['db']->query($sql);
复制代码 |
|