此版本的 WPML 包含大量新功能、全面改进以及与 WordPress 4.7 的兼容性。
基于简码的页面构建器翻译
现在,翻译使用页面构建器的网站变得更加容易。在此版本中,我们成功添加了对使用简码的页面构建器的全面支持。在下一个版本中,我们还将添加对其他页面构建器的支持,这些构建器以不同的方式存储其设计(通常在 postmeta 中)。
幸运的是,我们通过使用 WPML 的语言配置文件实现了对基于简码的构建器的全面支持。这意味着我们可以为任何此类页面构建器添加兼容性,而无需发布新版本的 WPML。
此版本支持 Visual Composer、Divi 和 Cornerstone (X Theme)。
这一全新支持意味着您只需翻译文本,而无需为每种语言重新创建整个设计。
要利用这一全新集成,您需要安装翻译管理和字符串翻译。然后,将 WPML 配置为使用翻译编辑器进行翻译。
在 Dario 的视频中了解其工作原理:
此外,您可以按照如何翻译由页面构建器创建的内容上的完整说明进行操作。
如果您想为其他页面构建器添加此类支持,您需要为它们创建语言配置文件。关于如何将使用简码的页面构建器与 WPML 集成的文档对此进行了详细说明。
语言切换器的新选项
WPML 在后台执行了许多操作,但您的访客始终会注意到的是
语言切换器。WPML 3.6 使您可以轻松地为主题创建自定义语言切换器,并完全按照您的期望显示语言切换器。
此版本对语言切换器进行了全面重新设计。主要功能包括:
- 完全向后兼容 – 您可以安全地升级并享受新功能,而无需担心网站崩溃。
- 菜单语言切换器添加菜单项而不是 HTML – 以前版本的 WPML 将 HTML 注入菜单中,以创建语言切换器项。这对许多主题来说没有问题,但并非兼容所有主题。新的语言切换器注入菜单项,因此对任何主题都完美兼容。这也使得为菜单语言切换器设置样式变得更加容易。
- 支持在多个位置使用多个切换器 – 某些语言切换器(如页脚)在每个网站中只能出现一次。但是,其他切换器(如小工具切换器)可以出现在多个位置。现在,您可以随意添加所需数量的切换器。
- 用于轻松自定义和主题嵌入的 Twig 模板 – 新的语言切换器使用 Twig 模板。这是一种简单的模板语言,无需编程即可理解和修改。这使得创建自定义语言切换器变得更加容易。但这还不是全部。主题现在可以包含一个语言切换器文件夹,WPML 将使用该文件夹。如果存在,WPML 将获取由主题创建的默认切换器设计。
- 更美观的 GUI – 美观的 GUI 意味着更容易理解和控制选项。由于此版本包含许多新选项,我们决定也是时候全面更新 GUI 了。经过三轮可用性测试,我们得出了一个我们喜欢的设计。我们希望您也会喜欢它。
自动下载 WordPress 语言包
当您向 WPML 添加语言时,它将自动下载 WordPress 核心的相应语言包。这在许多方面都有好处。显然,能够切换管理后台语言并看到所有内容都已本地化是非常棒的。这也有利于 WordPress 4.7 的兼容性,以便 WordPress 可以向用户提供此语言。
WordPress 4.7 兼容性
自从第一个 Alpha 版本发布以来,我们一直在使用 WordPress 4.7 进行开发和测试。WPML 3.6 的 QA 在 WordPress 4.7 和 4.6 上均已运行。WordPress 4.7 最显著的变化是引入了用户语言首选项。现在,WPML 的设置已合并到 WordPress 设置中(并且 WPML 会指示 WordPress 下载语言包)。对于 API 更新和已弃用的函数,还有一些更细微的更改。
其他改进
与往常一样,稳定性、安全性和性能优先于任何新功能。此版本包含一系列解决不同边缘情况的增强功能。
- 改进了“不同语言使用不同目录”协商类型的验证
- 调整了当 WPML 设置为在域名中使用语言时 wp_upload_dir 返回的 URL
- 修复了复制自定义字段时斜杠的处理问题
- 修复了“创建 PO 文件”功能,以便在需要时包含 msgctxt
- 防止在 XLIFF 文件中发送空单元
- 修复了翻译仪表板中的 GravityForms 日期问题
- 修复了包含长文本和 HTML 的单选选项未显示的问题
- 修复了与 Yoast 重定向的兼容性问题
- 修复了使用带有地区差异的语言时的浏览器重定向问题
- 修复了使用 sunrise 的 WP 4.6+ 中的多站点安装兼容性问题
- 在多站点上,在子站点设置期间不再更改主站点设置
- 修复了将语言配置为域名的网站中的登录重定向问题
- 修复了将语言配置为域名的 Nginx 服务器重定向问题
- 修复了克隆 wp_query 对象的非对象值的问题
- 修复了模板设置为默认时的页面模板同步问题
- 删除了 Snoopy 类并改用 WP_Http 类(是的,终于)
- 修复了将语言设置为域名的网站中与 get_option('siteurl’) 的兼容性问题
- 修复了 WPML_Backend_Request::get_ajax_request_lang
- 修复了 \SitePress::_sync_custom_field 以处理序列化数据
- 删除了同步 WP 菜单时仅将英语作为默认语言的限制
- 修复了从前端添加文章时 WPML 通知中的问题
- 修复了复制包含要复制的评论的文章时出现的问题
- 修复了忽略标题中包含特殊字符的插件管理通知时出现的问题
- 修复了在页面被永久删除时设置静态博客页面的问题
- 修复了在 Apache 或 Nginx 中使用 Google PageSpeed Tools 时的兼容性问题
- 防止语言切换器 URL 中的双 & 符号编码
- 修复了通过 AJAX 调用创建文章时未保存语言信息的问题
- Twenty Sixteen 页脚中的语言切换器被截断的问题
- Twenty Fifteen 页脚中的语言切换器被侧边栏部分隐藏的问题
- 更改了同步字段功能中的消息样式
- 添加了关于网站中仅配置一种语言时缺少菜单项的警告
- 改进了扫描主题或插件以查找字符串时对服务器资源的使用
- 改进了主题和插件本地化页面的页面加载和内存消耗
- 修复了尝试注册名称为 0 的字符串时出现的问题
- 修复了多语言小工具内容重复注册的问题
- 修复了在完成向导之前尝试扫描字符串时发生的问题。现在不允许这样做
- 修复了运行 WPML 重置时的数据库错误
- 修复了导入大型 .po 文件时出现的问题
但是我们讨论过的其他功能呢?
我们知道,功能愿望清单总是比我们在每个版本中设法包含的功能多。由于日程安排,我们希望在 WPML 3.6 中包含许多功能和改进,但未能如愿。希望您了解我们正在尽最大努力让每个人都满意。如果我们承诺过某些功能但此处未包含,请随时提醒我们。WPML 3.6.1 的功能列表包含大约 30 项。WPML 3.7 的功能列表包含 100 多项。
下载和更新
与往常一样,我们强烈建议您在更新 WordPress、主题和插件之前备份您的网站。每个人都在尽职尽责地测试 WordPress 兼容性。但是,您永远不知道交叉兼容性和配置更改会带来什么意外。无论我们在网站中更新什么,我们总是会事先执行完整备份。
您将自动收到所有已注册网站的 WPML 更新(您确实注册了所有网站,对吧?)。您还可以从您的帐户手动下载 WPML。请务必始终一起更新 WPML 的所有组件。
有反馈意见?
我们很乐意听取您的反馈、想法、建议和问题。