商城标签总览

适用范围:BadouCMS 商城插件(shop 模块)

标签作用:在模板中调用商品、品牌、价格筛选等商城数据

1. 标签库说明

商城标签库位于 modules/shop/taglib/Shop.php,模块启用后会随 cmsInit 自动预加载,
模板中直接使用 {shop:xxx} 即可,无需手动引入。

如需手动声明,可在模板顶部添加:

{taglib name="modules\shop\taglib\Shop" /}

2. 标签列表

标签描述
{shop:goods}商品列表标签,调取上架商品
{shop:brand}品牌列表标签,调取已启用品牌
{shop:pricefilter}价格筛选标签,输出价格区间筛选表单

3. 语言规则

商城数据统一跟随 CMS 语言:

  • 商品内容优先读取当前前台语言,找不到时回退默认语言
  • 价格、库存、SKU 为语言无关的交易数据,全语言共享
  • 商品单位、规格名、规格值等展示文本按语言回退

当前语言可用 get_frontend_lang() 获取,默认语言可用 get_default_lang() 获取。

4. 列表页公共变量

在商城栏目列表页(栏目模型为商品模型)中,系统会预先绑定以下变量,
供 {shop:goods}、{shop:pricefilter} 以及自定义筛选界面使用:

变量描述
$shop_goods_list当前页商品数组(等同 {shop:goods} 的 items)
$shop_goods_page分页 HTML
$shop_goods_total商品总数
$shop_filters筛选数据,含 price(价格区间)与 groups(扩展字段筛选项)
$shop_filter_active当前生效的筛选参数(keyword、price_min、price_max、filter)

5. 商品详情页公共变量

商品详情页由控制器绑定以下变量:

变量描述
$goods商品详情数据(含 SKU、品牌、评论、内容等)
$detail_goods_id交易商品主键(收藏等请求使用)
$skus / $shop_skusSKU 列表
$specs / $shop_specs规格选择器数据
$content商品对应的 CMS 内容(标题、多图、详情等)

更新时间:2026-09-19

更新时间:2026-09-19 17:18:08

文章目录