html,{foreach $goods_list as $goods},,{$goods.brand_name}, ...,,{/foreach},
`,,
$goods.brand_name`表示商品品牌的名称,根据实际情况进行修改。,,3. 保存模板文件,并清除缓存。,,4. 重新访问商品列表页,即可看到每个商品下方都显示了对应的品牌名称。在ECShop中,实现商品列表页显示每个商品的品牌,可以通过以下步骤进行二次开发:
修改category.php文件
1、打开category.php文件:找到该文件中的SQL查询语句,将原来的查询语句:
```php
$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, ';
```
修改为:
```php
$sql = 'SELECT g.goods_id, g.goods_name, b.brand_name, g.goods_name_style, g.market_price, g.is_new, g.is_best, g.is_hot, g.shop_price AS org_price, ';
```
2、添加LEFT JOIN语句:在原SQL语句的基础上增加一行:
```php
" LEFT JOIN ". $GLOBALS['ecs']->table('brand') . " AS b on b.brand_id = g.brand_id ";
```
3、更新数组赋值语句:在获取结果集后,找到如下代码:
```php
$arr[$row['goods_id']]['name'] = $row['goods_name'];
```
在其下方增加一行:
```php
$arr[$row['goods_id']]['brand_name'] = $row['brand_name'];
```
修改模板文件goods_list.lbi
1、打开模板库文件:找到/themes/default/library/goods_list.lbi
文件。
2、添加品牌显示代码:在需要显示品牌的地方加入以下代码:
```php
{$goods.brand_name}
```
通过以上步骤,可以在ECShop的商品列表页显示每个商品的品牌名称,如果需要进一步优化,还可以考虑以LOGO形式展示品牌。
以下是两个相关问题及解答:
1、如何在ECShop商品列表页按点击量(人气)排序?:要实现这一功能,需要在category.php
文件中修改SQL查询语句,增加一个按点击量排序的字段,具体操作可以参考相关教程。
2、如何在ECShop后台的商品列表中也显示商品的品牌?:可以在/admin/includes/lib_goods.php
文件中,定位到goods_list
函数部分,找到相应的SQL查询语句并进行修改,使其包含品牌信息。
到此,以上就是小编对于“商品列表页显示每个商品的品牌-ecshop二次开发”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。