You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Shopware 6.5 App的Twig中获取Storefront版本?

获取Shopware Storefront版本的正确方法

为什么直接读取composer.json不可行

Shopware的App安全机制会限制文件系统访问权限,你尝试通过file_get_contents读取服务器上的composer.json会失败,这是预期的安全限制。

推荐方案:使用全局shopware变量

Shopware Storefront的版本和Shopware核心版本完全同步,因此可以直接通过全局shopware变量获取核心版本,以此判断Storefront版本:

{# 获取完整版本号,比如6.5.3.2 #}
{% set full_version = shopware.version %}

{# 提取主版本.次版本,比如6.5 #}
{% set major_minor_version = full_version|split('.')|slice(0, 2)|join('.')|float %}

{# 根据版本执行不同逻辑 #}
{% if major_minor_version >= 6.5 %}
    <p>这是6.5及以上版本的代码片段</p>
{% elseif major_minor_version >= 6.4 %}
    <p>这是6.4版本的代码片段</p>
{% else %}
    <p>这是6.4以下版本的代码片段</p>
{% endif %}

额外说明

  • Shopware 6的核心、Storefront、Administration等组件版本始终保持一致,用核心版本判断完全可以覆盖你的需求。
  • 如果你是在自定义插件而非App中开发,还可以通过注入Shopware\Core\Framework\Adapter\Version\VersionAccessor服务获取版本,再传递到Twig模板中,但App环境下全局变量是最直接的方式。

内容的提问来源于stack exchange,提问作者Codixio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 23:40:57