2012-11-13 11:06 首页全部分类调用对应分类推荐品牌
2013-11-05 15:00
204 查看
看效果:
这里的推荐品牌是写死的,而我们要实现的功能是要调用左边对应分类的品牌,也就是成长用品。
首先,你必须要有一个函数,通过传递一个分类的id来调用品牌数据的。
然后,你在模板中怎么来显示这个数据。
没有最后。
首先,你把这个函数写到index.php里面。
这个函数经测试没有问题。
然后,你要找到你模板中写推荐品牌的地方。
下面:
直接代码:
<?php
/**
* 获得某个分类下的品牌列表
*
* @access public
* @param int $cat
* @return array
*/
function get_cat_brands($cat, $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";
//print_r($cat);
$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;
}
<div class="sortTitle">推荐品牌</div>
<div class="sortList">
<ul>
<!--{foreach from=get_cat_brands($this->_var['cat']['id']) item=brandCat}-->
<li><a href="{$brandCat.url}">{$brandCat.brand_name}</a></li>
<!--{/foreach}-->
</ul>
($this->_var['cat']['id'])
这个地方是什么原理?
先来看左边的成长用品,它实际上是一个分类id.
那么我们要把这个分类id给传进函数中去。
这个分类id放在哪里?
ecshop中的关于smarty的部分内容全部放在cls_templets.php中。
去看一下这个文件你知道。
这个分类id是从数据库读出来之后在smarty这个类中是放在$_var[]这个数组中的。
那么,这个数组到底有多大呢?
真的比你想象的要大。
太多太多的数据都是存在它里面的。
所以我们从这里拿出来这个分类id。其它的就好办了。
这是关键的地方。
当然,另一个关键的地方是这个函数。
这里的推荐品牌是写死的,而我们要实现的功能是要调用左边对应分类的品牌,也就是成长用品。
首先,你必须要有一个函数,通过传递一个分类的id来调用品牌数据的。
然后,你在模板中怎么来显示这个数据。
没有最后。
首先,你把这个函数写到index.php里面。
这个函数经测试没有问题。
然后,你要找到你模板中写推荐品牌的地方。
下面:
直接代码:
<?php
/**
* 获得某个分类下的品牌列表
*
* @access public
* @param int $cat
* @return array
*/
function get_cat_brands($cat, $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";
//print_r($cat);
$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;
}
<div class="sortTitle">推荐品牌</div>
<div class="sortList">
<ul>
<!--{foreach from=get_cat_brands($this->_var['cat']['id']) item=brandCat}-->
<li><a href="{$brandCat.url}">{$brandCat.brand_name}</a></li>
<!--{/foreach}-->
</ul>
($this->_var['cat']['id'])
这个地方是什么原理?
先来看左边的成长用品,它实际上是一个分类id.
那么我们要把这个分类id给传进函数中去。
这个分类id放在哪里?
ecshop中的关于smarty的部分内容全部放在cls_templets.php中。
去看一下这个文件你知道。
这个分类id是从数据库读出来之后在smarty这个类中是放在$_var[]这个数组中的。
那么,这个数组到底有多大呢?
真的比你想象的要大。
太多太多的数据都是存在它里面的。
所以我们从这里拿出来这个分类id。其它的就好办了。
这是关键的地方。
当然,另一个关键的地方是这个函数。
相关文章推荐
- ecshop 首页调用全部分类树 并且分类下的品牌 &调用商品分类指定分类下级分类
- Ecshop模板在首页调用指定分类的热销、推荐、新品商品
- ECSHOP首页调用指定分类推荐商品/热卖商品/新品商品
- ecshop首页调用指定分类下的推荐、热卖、新品
- 如何在ecshop首页调用指定分类的热销、推荐、新
- 在首页调用不同分类商品样式与广告,cat_goods.lib
- ecshop首页调用某分类下的商品|assign_cat_goods()
- 织梦标签循环首页调用全部顶级栏目和当前顶级栏目下的子栏目
- ecshop 首页调用指定分类下的销售排行
- ecshop首页调用指定分类下商品
- dedecms分类信息怎么调用到网站首页上
- 首页调单个产品分类的推荐产品,最新产品和热卖商品
- Magento调用分类的方法和获取全部分类
- 分类推荐品牌
- ecshop首页调用某分类下的商品|assign_cat_goods()
- ECShop在首页调用某分类下的商品列…
- ectouch手机商城首页调用指定分类下的商品
- DedeCms首页调用代码大全(含连载、分类信息、圈子、会员、问答)
- 织梦dedecms系统首页调用分类信息联动类别(地区,类型等)的方法如下
- ASPCMS根据页面内容自动调用该分类相关的文章或者推荐文章