随着最新版本的 WPML 准备就绪,我们改变了向现有用户推送更新的方式,采用了分阶段的渐进式发布。这为我们提供了一种仔细控制和监控性能的方法,并确保我们随时准备好接收所有反馈并进行修复。
包含的内容
在深入了解我们新的发布模式之前,让我们快速看一看 WPML 4.2.8 提供了哪些新功能,以及我们在整个平台上进行的各种修复(文章末尾附有完整的修复列表)。WPML 核心 4.2.8
- 添加了翻译 Elementor 标题(Heading)和动画标题(Animated Headline)链接的功能。
- 将 Elementor 表单小工具的“required field”和“redirect to”字段添加到可翻译字段中。
- 将 Elementor 的“Archive Posts”和“Search form”文本添加到可翻译文本中。
- 添加了翻译 Elementor 中图像框(Image Box)链接的功能。
- 添加了翻译 Elementor 视频小工具 URL 的功能。
- 添加了翻译 Elementor 文章导航(Post Navigation)小工具标签的功能。
- 修复翻译管理仪表板(TM Dashboard)中的行操作
- 添加了“wpml_tm_job_field_is_translatable”过滤器,以允许覆盖“\WPML_Element_Translation_Package::filter_non_translatable_fields”的输出。
- 尝试编辑等待翻译的文章时显示一条消息。
- 改进了翻译作业页面中工具提示的措辞。
- 添加了“wcml_get_woocommerce_currency”全局函数以匹配默认的 WooCommerce 货币值。
- 在设置页面添加了“wcml_settings_ui_after_default”动作,以允许用户添加自定义选项。
- 当安装了 RightPress 的 WooCommerce“Dynamic Pricing & Discounts”插件时,添加了管理后台通知,以告知兼容性问题。
- 修复了商店管理员在编辑翻译时的权限。
- 添加了在 WPML Media Translation 中将鼠标悬停在缩略图上时显示完整图像的功能。
分阶段推出
这些出色的新功能已经准备就绪,但您可能不会立即看到它们。至少,不会自动看到(稍后会详细说明)。这是我们首次尝试分阶段发布 WPML 的新版本。最初,只有一小部分用户会通过 WordPress 中的自动插件更新看到 4.2.8 版本的到来。我们将进行监控和观察,倾听反馈并提供帮助,然后再继续下一阶段的发布。
分阶段推出的优势
任何更新的真相在于都存在破坏现有功能的风险。这已经成为我们数字生活中的一个事实,但当一个全新的错误被意外引入到以前运行良好的系统中时,这并不能减轻其带来的打击。自然地,我们在发布任何内容之前都会进行反复的测试和检查,但您根本无法预测它们在实际环境中发布后的表现。因此,分阶段推出的明显好处是最大限度地减少可能出现的任何意外问题,而我们的大多数用户从该版本推出之日起,就会看到一个坚如磐石、完美无瑕的版本。
这也使我们庞大的支持人员和系统网络能够适应新版本。他们与用户一起学习,并能够更高效地解决问题,为全面发布留出充足的时间。随着越来越多的人采用 WPML 并将其用于创造性的用途,这是一个不容忽视的实用性。
此外,这有助于建立对所交付更改的信心,并帮助我们和您都参与其中,甚至对即将推出的内容感到兴奋。这变成了一种对话,而不是一场争吵,由此产生的热情使整个过程变得更具成效和积极性。
不想等待?
您不必等待。正如我已经解释的那样,第一阶段的发布只会针对我们的一小部分用户,因此您很有可能不会立即看到它。但是,如果您想手动强制更新,我们非常欢迎您这样做。您可以手动下载并安装新版本,或者如果您的网站已在您的 WPML 帐户中注册,您可以将新版本作为自动更新强制执行。
注意:WPML 4.2.8 版本需要更新高级翻译编辑器(ATE)。如果您正在使用 ATE,并且 4.2.8 的分阶段推出尚未到达您那里,您需要手动激活更新。您会知道这是否与您有关,因为您将看到以下警告屏幕:

在 WordPress 管理后台中,前往插件 > 安装插件 > 商业,然后单击“检查更新”。这将强制安装 WPML 的 4.2.8 更新,并且 ATE 将恢复正常工作。

反馈
显然,我们一如既往地希望获得您对更新的反馈(事实上,我们非常依赖它!),但这一次,我们也很有兴趣听听您对这种新的分阶段发布模式的想法。因此,欢迎前往支持论坛与我们探讨此事,以及有关 WPML 的所有内容。
WPML 4.2.8 修复
WPML 核心 4.2.8- 通过使用 WordPress 原生 API 替代自定义代码,改进了处理自定义旗帜图像上传的逻辑
- 修复了 Gutenberg 区块翻译中所有 href 属性都被转义的问题
- 修复了在获取翻译且记录尚无元素 ID 时出现的问题
- 将 clue/stream-filter 更新至最新版本,以避免插件之间的依赖冲突
- 防止在 Elementor 中为已翻译的 Pricetable 列表项添加额外的 P 标签
- 修复了来自页面构建器的内容数据并非总是被正确转义的问题
- 修复了当自定义固定链接使用 index.php 时,远程翻译未正确应用的问题
- 清除了与 twig 相关的已弃用错误消息
- 修复了 Memsource 插件的一个致命错误
- 解决了 Twig 与其他插件的冲突
- 修复了在 Windows 上确定插件依赖项的问题。
- 向 wpml_element_has_translations_filter 添加了逻辑,以处理传递 term_id 而不是 term_taxonomy_id 的情况
- 使用 Types 插件时,WYSIWYG 自定义字段在翻译编辑器中渲染为文本字段
- 当自定义促销价与日期范围结合设置时,前端显示错误价格
- 修复了 WooCommerce Subscriptions 的兼容性问题,即客户续订发票电子邮件的语言错误
- 不在翻译编辑器中显示“隐藏已完成”切换器
- 修复了在产品级别进行库存管理的可变产品的 stock_status 同步问题
- 修复了在 WooCommerce 报告页面按产品筛选时的数据库错误
- 由于小工具工作方式的更改,价格筛选小工具在 WooCommerce >= 3.6.0 中无法工作
- 如果使用批量操作,则不会为翻译设置变体促销价
- 为直接银行转账网关设置添加了默认货币支持
- 将可变产品与原始产品链接可能会导致错误
- 修复了插件评分消息无法关闭的问题
- 修复了直接银行转账设置页面上的通知
- 修复了链接可变产品翻译时的 PHP 通知
- 跳过 WCML 向导无法关闭通知窗口,需要刷新页面
- 优惠券被错误地应用到没有该优惠券的产品上
- 无法禁用自定义汇率服务的 API 密钥
- “我的帐户”查看订单页面上的“再次购买”按钮对可变产品不起作用
- 如果选择了受支持的货币,PayPal 支付网关设置会使不受支持的货币也可用于支付
- 更新次要语言的商店页面后,默认语言的商店页面在前端消失
- 产品变体未同步到第二语言
- 修复了同时使用 WooCommerce Dynamic Pricing 和 WooCommerce Brands 时折扣未正确显示的兼容性问题。
- 修复在翻译仪表板中列出时 Gravity Forms 的日期
- 添加同意字段中的“Checkbox Label”以供翻译
- 在显示已翻译的表单时,使用翻译后的选项值更新条件逻辑
- 修复了保存翻译任务后 json 编码的文章字段未被转义的问题
- 修复了 gettext 域中的一个拼写错误
- 防止了在某些罕见情况下与保存翻译优先级相关的致命错误
- 允许在文章的原始内容被修改时下载其翻译
- 当自定义字段包含换行符时,在经典编辑器中将翻译字段调整为 textarea
- 修复了多站点上已翻译别名的缓存问题。
- 缓存 WPML_Slug_Translation::rewrite_rules_filter 的结果,以避免在激活 Toolset Access 插件时出现严重的性能问题
- 从主题和插件本地化扫描时排除 node_modules 目录
- 修复了在正确时间加载 TM 工厂的问题
- 修复翻译管理仪表板(TM Dashboard)中的行操作

