Shopware 6.4.12.0商品页不显示具体库存仅显示有货问题咨询
Shopware 6 商品页仅显示“in stock”不展示具体库存的解决方法
这个问题是Shopware 6的默认配置逻辑导致的,不是程序异常,按以下步骤排查即可:
1. 后台配置调整(无自定义主题时优先操作)
- 登录Shopware 6管理后台,进入路径
设置 > 商品 > 库存 - 找到在商品页展示实际库存数值的开关,切换为开启状态
- 找到库存显示阈值配置项:默认逻辑是库存高于该阈值时仅显示“in stock”,低于阈值才显示具体数值,如果你需要所有商品无论库存多少都显示具体数,把这个阈值设置为一个远高于店铺最大库存值的数字即可(比如99999)
- 保存配置后进入
设置 > 系统 > 缓存与索引,清理所有店铺缓存、重建主题索引,刷新商品页即可看到效果 - 单独核对商品配置:打开对应商品的编辑页,进入「规格」板块,确认没有开启不跟踪库存选项,开启该选项的商品不会记录具体库存,固定显示有货状态
2. 自定义/第三方主题适配
如果完成上述配置后仍只显示“in stock”,说明你使用的主题重写了默认库存渲染逻辑,需要修改模板代码:
- 连接服务器找到当前启用主题的模板目录,定位到商品详情页库存渲染文件,一般路径为
views/storefront/page/product-detail/buy-widget/delivery.html.twig - 找到判断商品可售、输出“in stock”文本的代码段,在对应位置补充输出商品库存字段即可,参考代码:
{% if product.available %} <div class="delivery-info in-stock"> {{ "detail.inStock"|trans }} {# 新增下面这行输出具体库存 #} <span class="stock-count">,当前库存:{{ product.stock }} 件</span> </div> {% endif %}
- 保存文件后回到后台重建主题缓存、清理店铺缓存,刷新页面验证即可
其他异常排查点
- 如果你安装了第三方库存管理、ERP对接类插件,先检查插件配置页是否有重写库存展示的相关开关,部分插件会默认隐藏具体库存数
- 多销售渠道部署的场景,要确认当前访问的销售渠道单独的库存配置和全局配置一致,不要只修改全局配置遗漏了渠道级配置
- 如果开启了HTTP缓存、CDN缓存,需要同步清理对应缓存规则,避免旧页面缓存持续生效
内容的提问来源于stack exchange,提问作者pim krook
相关产品推荐
相关产品推荐

