跳到内容
新问题

对这个项目有疑问吗?注册一个免费的GitHub帐户以打开一个问题,并联系其维护者和社区。

单击“注册GitHub”,表示您同意我们的服务条款隐私声明。我们偶尔会向您发送与帐户相关的电子邮件。

已经在GitHub上了?登录到您的帐户

主题切换后,删除的Webfont字体系列在全局样式中仍然可用 #59974

正常开放
彼得威尔逊公司已打开此问题2024年3月18日·5条评论
正常开放
标签
[功能]字体库 全球风格 与更广泛的Global Styles工作相关的任何内容,包括Styles Engine和theme.json [类型]Bug 现有功能无法按预期工作

评论

@彼得威尔逊公司
复制链接
贡献者

描述

删除的Web字体仍然可用,并且由主题切换后的主题使用:

  • 字体被定义为站点前端的默认字体
  • 字体显示在全局样式的排版侧栏中
  • 字体在块设置中显示为可用

这将导致样式断开,受影响图元的显示返回到默认的系统字体。

在这种情况下,我建议:

  • 确保在站点/帖子编辑器中显示前字体系列帖子类型保持不变
  • 为了允许删除字体,请回到字体系列CSS属性中的主题默认值,例如--wp——preset——font-family——just-ather-hand:“Web字体名称”,“主题字体默认”,system-Default;

分步复制说明

便利步骤

  1. 配置新的环境(通过重新安装或删除所有帖子)。这不是必需的,但会使它更容易。
  2. 激活2024主题
  3. 打开网站编辑器
  4. 在字体库模式中,安装只是另一只手谷歌字体。
  5. 在全局排版设置中,将所有项目设置为使用只是另一只手字体(这将使错误显而易见)
  6. 保存站点,这将包括保存全局样式的提示
  7. 访问网站的前端,将加载字体。
  8. 通过WP CLI运行命令wp post delete$(wp post-list--post_type='wp_font_face',wp_font_family'--format=ids)--force
  9. 在禁用缓存的情况下访问并重新加载站点前端(通过网络工具或Chrome/Firefox中的shift+刷新)
  10. 观察字体是否恢复为默认系统字体,草书的

长形台阶

将WP CLI命令替换为:

  1. 退出站点编辑器
  2. 将主题切换到2023年
  3. 打开站点编辑器
  4. 在字体库模式中,删除只是另一只手字体
  5. 退出站点编辑器(由于全局样式没有改变,您可能不会得到保存提示)
  6. 将主题切换回2024年
  7. 打开站点编辑器
  8. 转到全局排版设置
  9. 观察删除的字体仍在列表中
  10. 继续上述步骤,遵循WP CLI步骤

按照复制步骤,你可以重新安装谷歌字体,一切都会看起来很好。在生产中,这不太可能奏效,因为谷歌经常重命名字体文件,这些文件将在wordpress.org API端点更新时反映出来。

屏幕截图、屏幕录制、代码片段

WPCLI命令/长形式步骤之前的站点

上午10 02 13时截屏2024-03-19

遵循WPCLI命令/长格式步骤的站点

上午10 02 36时截屏2024-03-19

遵循WPCLI命令/长格式步骤的排版侧栏

上午10 04 23分截屏2024-03-19

环境信息

  • 古腾堡树干
  • WordPress 6.4.x语言

  • WordPress中继

请确认您已搜索回购中的现有问题。

是的

请确认您已测试除古腾堡外的所有插件。

是的

@彼得威尔逊公司 彼得威尔逊公司补充[类型]Bug 现有功能无法按预期工作 [功能]字体库 全球风格 与更广泛的Global Styles工作相关的任何内容,包括Styles Engine和theme.json标签2024年3月18日
@格特戴夫
复制链接
贡献者

盖特戴夫 评论2024年3月25日

作为WordPress 6.5最终流程的一部分,本期由WP Slack中的编辑发布主管和贡献者进行了筛选。

请参见https://wordpress.slack.com/archives/C02QB2JS7/p1711372016096219(需要注册)。

使用的标准是:

  • WP 6.5的RC周期中是否发现了此错误?
  • 这个错误与这个版本中的一个受欢迎的功能直接相关吗?
  • 此错误会导致现有网站在升级到WP 6.5时中断/失败吗?
  • 影响的大致范围是什么?等级:(最低)1-5(严重)。
  • 修复程序是否引入了任何新功能或更改?不适用

结论:我们建议对此问题的任何修复包含在WP 6.5中,并被压入6.5.1。

贡献者认识到,用户体验远非理想,但由于没有公关,以及6.5版所需的其他工作,没有明确的路线来及时为主要版本发布修复程序。然而,我们应该努力为6.5.1制定一个稳健的解决方案。

@彼得威尔逊公司
复制链接
贡献者 作者

我对字体系列的帖子类型做了一些快速调查。

测试时matiasbenedetto/modern-fonts-stacks-for-font-library公司并与@创造性编码器通过Slack,我确认System字体font-families没有创建任何字体-字体帖子类型,因为它们不是必需的。这是因为@字体-表面不需要规则。

因此,当删除font-family post类型的最后一个子font-face时,可以安全地假定font-familiy是一个webfont,也可以删除。一些额外的逻辑可能会有所帮助,可以作为进一步讨论的主题。(循环逻辑警告:删除font-family会删除font-faces,因此需要检查它是否存在无限循环。)

我还没有弄清楚的是如何处理全局和块样式,这些样式使用自删除后的font-family。显然,在删除字体系列时更新所有post对象是不可能的,因此可能需要在呈现时使用一些逻辑来确认字体系列是否仍然定义。一旦在站点/块编辑器中打开了post对象,它就可以以类似于弃用迁移的方式进行更新。

所有关于这方面的讨论都可以等待,我只是记录下这一点,同时我还记得我做过的一些测试以及在做这些测试时发现的问题。

@阿费西娅
复制链接
贡献者

参见相关问题:#58375人
字体库:通过FTP或其他方式手动删除后,字体仍列为已安装

@阿隆约宾
复制链接
成员

阿隆约宾 评论2024年4月16日

我认为这里的好处是,如果有某种形式的通知,可能是在站点编辑器中,但可能只是在全局样式中,预期的字体没有安装,理想情况下是一键修复。

希望对于一个期望使用一种字体的人来说,网站没有使用这种字体,但我不认为这是100%肯定的,所以我认为有必要发出某种通知。

虽然这是一个bug,但我也认为在字体库存在更长时间之前,很少会遇到这种情况,所以我想知道这是否更适合6.6而不是6.5.x

@彩色电视机
复制链接
成员

大家好,
距离Beta 1截止日期只有一周了WordPress 6.6语言。这个问题已经有一段时间没有任何变化了,所以我们(6.6版本的编辑分诊负责人)决定将其从WordPress 6.6编辑器任务项目板.

免费注册 在GitHub上加入此对话.已经有帐户了吗?登录以发表评论
标签
[功能]字体库 全球风格 任何与更广泛的全局样式工作相关的内容,包括样式引擎和主题.json [类型]Bug 现有功能无法按预期工作
项目
状态:🐛 Punt至6.5.1
状态:🦵 Punt到6.6
开发

没有分支或拉请求

5名参与者