合并建议:首选语言

大约8年前首选语言功能项目是开球了作为对功能请求功能请求 功能请求通常应在创意论坛、邮件列表、插件中开始,或提请核心团队注意,例如通过为每个主要版本举行的范围会议。因此,通常不鼓励此类未经请求的门票。在里面#28197。现在它可能是最古老的活动功能插件功能插件 一个插件,其创建目的是最终被提议包含在WordPress Core中。请参见作为插件的功能.。随着时间的推移大量更新,缺陷缺陷 错误是错误或意外结果。性能改进、代码优化和被视为增强,而不是缺陷。功能冻结后,只处理错误,回归(与前一版本相反的更改)是最高优先级。修复,甚至完全重构。构建和维护首选语言时始终考虑到将其合并到核心核心 核心是运行WordPress所需的一组软件。核心开发团队构建WordPress。有一天。现在是时候这样做了。

目的和目标

作为一个快速提醒,Preferred Languages(首选语言)用一个超级版本取代了现有的语言下拉列表,该版本允许您选择多个首选语言。WordPress然后尝试加载第一种可用语言的翻译,否则返回到列表中的下一种语言。如果没有这一点,WordPress在这种情况下只会回到英语(美国),这不是一种很好的体验。这样一个用户界面用户界面 用户界面是一个非常标准的功能,例如在操作系统和浏览器设置中也可以看到。

首选语言UI,在设置页面上显示选定语言的列表。
设置页面上的首选语言UI示例

注:首选语言适用于站点语言(可在“设置”->“常规”中设置)和用户语言(可以在配置文件中设置)。

项目背景

你可能想知道为什么花了这么长时间。自项目开始以来,WordPress发生了很大变化。例如,古腾堡古腾堡 古腾堡项目是WordPress的新编辑器界面。编辑器改进了创建新内容的过程和体验,使编写丰富内容变得更加简单。它使用“块”来增加丰富性,而不是短代码、自定义HTML等。https://wordpress.org/gutenberg网站/发生了。这就是为什么首选语言看到了使用相同的反应反应 React是一个JavaScript库,它使推理、构造和维护无状态和有状态用户界面变得容易。https://reactjs.org/.也为 块是一个抽象术语,用于描述使用WordPress编辑器组合在一起形成网页内容或布局的标记单元。这个想法结合了过去可能通过短代码、自定义HTML实现的概念,并将发现嵌入到单一一致的API和用户体验中。编辑。在古腾堡,我们还看到了JavaScript本地化,这需要对首选语言进行进一步迭代。然后需要合并不完整的翻译,减少在英语中看到缺少字符串的可能性。然而,合并翻译对性能非常不利,因为它需要加载大量翻译翻译 更改文本、单词和显示格式以支持另一种语言的过程(或结果)。另请参见本地化,国际化.文件夹。在WordPress 6.5中,我们终于完全用性能更好的解决方案替换本地化库本机支持一次加载多个文件。所以最后剩下的拦截器拦截器 一个严重到阻止发布的错误。现在终于解决了!

国际化和本地化是WordPress的核心部分超过一半的用户。这就是为什么此功能本机属于WordPress核心而不是(规范)插件。将首选语言合并到核心中可以使后备逻辑运行得更接近翻译加载发生的位置,从而降低错误和插件插件 插件是一个包含一组功能的软件,可以添加到WordPress网站。他们可以扩展功能或为WordPress网站添加新功能。WordPress插件是用PHP编程语言编写的,并与WordPres无缝集成。这些可以在WordPress.org插件目录中免费https://wordpress.org/插件/或者可以是第三方基于成本的插件不相容性。此外,UI的影响很小,因为它只是用附加功能扩展了现有的语言下拉列表。

实施详细信息

UI是使用TypeScript和React构建的@文字出版社/*npm包也用于Gutenberg。这使得外观和感觉一致,并且可以很容易地将其集成到任何改进的WordPress中管理员管理员 (和超级管理员)用户界面。后端部件的开发方式是尽可能简单地将它们合并到核心中,因此补丁补丁 一种特殊的文本文件,通过标识添加、删除和更改的文件和行来描述代码的更改。它也可以被称为差异。补丁可以是应用到代码库进行测试。可以相对快速地开发。

多年来,数千名用户在生产网站上对首选语言进行了测试。它可以在WordPress支持的所有主要浏览器中工作,如下所示可达性无障碍 无障碍性(通常简称为a11y)是指为残疾人设计产品、设备、服务或环境。无障碍设计的概念确保了“直接访问”(即无人协助)和“间接访问”,即与个人的辅助技术(例如计算机屏幕阅读器)兼容。(https://en.wikipedia.org/wiki/Accessibility网站)最佳实践,如果JavaScript脚本JavaScript脚本 JavaScript或JS是一种面向对象的计算机编程语言,常用于在web浏览器中创建交互效果。WordPress广泛使用JS以获得更好的用户体验。当PHP在服务器上执行时,JS在用户的浏览器中执行。https://www.javascript.com/.已禁用。

贡献者和反馈

当我(@瑞士风格)一直是插件的主要开发人员,有价值的输入和贡献来自社区其他人。

这是一份提案,可能会根据您的反馈进行修改。如果你还没有尝试过这个插件,请下载并安装来自WordPress.org网站WordPress.org网站 用户创建和共享WordPress代码的社区站点。您可以在这里下载WordPress核心、插件和主题的源代码,以及社区对话和组织的中心位置。https://wordpress.org/或WordPress管理员的安慰。您可以查看当前代码并在项目的GitHub存储库或在中#铁芯i18n上的松弛(Slack)松弛(Slack) Slack是一个协作群聊平台https://slack.com/WordPress社区在https://make.wordpress.org/chat/..

所有反馈将在未来几周内收集。之后,将讨论收到的反馈并确定下一步。目标是快速开发并发布补丁,以确保该功能在WordPress中得到大量测试大旅行箱大旅行箱 Subversion中的一个目录,包含为下一个主要发布周期做准备的最新开发代码。如果您运行的是“trunk”,那么您使用的是最新版本。.

道具到@海洋90用于审阅此帖子。

#6-6,#功能插件,#特色项目,#国际18n,#合并利润,#一夫多妻制,#首选语言