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

如何在Shopware 6.5.1中添加自定义字体?已尝试方法失效

Shopware 6.5.1 自定义字体添加解决方案

Shopware 6.5把前端构建工具从Webpack换成了Vite,这直接导致你之前6.4的方法失效,按下面步骤调整就能解决:

  • 调整字体文件存放路径
    把字体文件从customtheme/src/Resources/app/storefront/src/assets/font/移到customtheme/src/Resources/app/storefront/assets/fonts/(注意是直接在storefront下的assets目录,不是src子目录下的)。

  • 修改SCSS中的@font-face配置
    原来的$app-css-relative-asset-path变量在Vite环境下不再生效,改用相对路径或者Vite的asset引用语法,比如在base.scss里写:

    @font-face {
        font-family: 'Myriad Pro';
        font-style: normal;
        font-weight: 300;
        font-display: fallback;
        src: url('../assets/fonts/font.woff2') format('woff2'),
             url('../assets/fonts/font.woff') format('woff');
    }
    

    这里的相对路径是基于SCSS文件所在的storefront/src/scss目录往上找assets,路径要对应你实际的字体文件位置。

  • 替换默认字体变量
    要让全站应用这个字体,在variables.scss或者base.scss里覆盖Shopware的默认字体变量:

    $font-family-primary: 'Myriad Pro', sans-serif;
    
  • 重新构建主题资源
    执行构建命令让资源生效:

    ./bin/build-storefront.sh
    

    如果是开发环境,用./bin/watch-storefront.sh实时监听改动。

排查要点

  1. 检查字体文件名、路径的拼写(注意大小写,比如fonts和font别搞混)
  2. 构建后去public/theme/customtheme/assets/fonts/确认字体文件是否被正确复制过去
  3. 浏览器强制刷新(Ctrl+F5)清缓存,再用开发者工具检查元素的font-family是否已应用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 00:32:21