生命不息,奋斗不止/创造价值-传递价值-获得价值
所谓迷茫,就是才华配不上梦想 每一个让你难堪的现在,都有一个不够努力的曾经

ECSHOP取得当前分类下商品的品牌列表

ECSHOP取得当前分类下商品的品牌列表 - labbs - 单纯枫部落阁

比如我点击”分类一”,显示”商品1″,”商品2″,”商品3″,”商品4″属于的品牌,即”品牌1″,”品牌2″,”品牌3″

如果点击”分类1.1″,显示”商品1″,”商品2″属于的品牌,即”品牌1″,”品牌2″

如果点击”分类1.2″,显示”商品3″,”商品4″属于的品牌,即”品牌1″,”品牌3″

具体解决方法

1.在includelib_common.php中添加下面函数

/**

* 获得某个分类下的品牌列表

*

* @access  public

* @param   int     $cat

* @return  array

*/

function get_cat_brands($cat = 0, $app = ‘category’)

{

$children = ($cat > 0) ? ‘ AND ‘ . get_children($cat) : ”;

$sql = “SELECT b.brand_id, b.brand_name, b.brand_logo, COUNT(g.goods_id) AS goods_num, IF(b.brand_logo > ”, ‘1’, ‘0’) AS tag “.

“FROM ” . $GLOBALS[‘ecs’]->table(‘brand’) . “AS b, “.

$GLOBALS[‘ecs’]->table(‘goods’) . ” AS g “.

“WHERE g.brand_id = b.brand_id $children ” .

“GROUP BY b.brand_id HAVING goods_num > 0 ORDER BY tag DESC, b.sort_order ASC”;

$row = $GLOBALS[‘db’]->getAll($sql);

foreach ($row AS $key => $val)

{

$row[$key][‘url’] = build_uri($app, array(‘cid’ => $cat, ‘bid’ => $val[‘brand_id’]), $val[‘brand_name’]);

}

return $row;

}

2.在category.php中查找$smarty->assign(‘current_cat_id’,   $cat_id);

在$smarty->assign(‘current_cat_id’,   $cat_id); 下添加下面代码:

$smarty->assign(‘cat_brands’,       get_cat_brands($cat_id, ‘category’));// 分类下商品的品牌信息

3.在category.dwt模板中的某个地方调用该数组信息即可,如:

<!–{foreach from=$cat_brands item=cat_bd}–>

<a href=”{$cat_bd.url}”>{$cat_bd.brand_name}</a>

<!–{/foreach}–>

赞(0)
未经允许不得转载:jack361博客 » ECSHOP取得当前分类下商品的品牌列表

评论 抢沙发

评论前必须登录!

 

如果你爱我或恨我,请↓

联系我