可重复字段组可帮助您轻松构建高级网站。更重要的是,它们让管理内容变得更加容易,而不会有破坏前端设计的风险。
什么是可重复字段组
自定义字段允许您向文章、页面或自定义文章类型添加一条信息。可重复字段组则允许您添加信息列表。您可以将可重复字段组看作一个表格,其中包含每个项目的行以及它们不同字段的列。
例如,这里有一个可重复字段组,我们已将其设置为在前端显示一个画廊。
在此示例中,“画廊”是列表,画廊中的每个项目都需要多条信息才能显示(图像、说明和可选链接)。
可重复字段组如何帮助构建网站
使用可重复字段组时,您可以将内容编辑与内容在前端的显示方式完全分开。编辑者将使用 WordPress 管理后台中的表格结构,该结构显示每个项目的不同字段。可重复字段组使用模板在前端显示。
这带来了许多巨大的优势:
- 编辑者可以添加、修改和删除项目,而(您)无需担心破坏网站前端。
- 您可以通过不同方式显示完全相同的信息或其中一部分信息。
- 翻译起来要容易得多。您的译者只需编辑文本,而无需触碰精美的设计。
创建可重复字段组的插件
WordPress 没有可重复字段组。但是,有些插件可以为您创建它们。
用于设置可重复字段组的最著名插件是 ACF (Advanced Custom Fields)。免费版不提供可重复字段组,但您可以购买 repeater field 附加组件。
可重复字段组也将加入 Toolset(目前在 Beta 版中可用)。Toolset 与 WPML 由同一团队开发,因此您使用 Toolset 构建的所有内容从设计之初就是 Multilingual Ready(支持多语言)的。
设置和使用可重复字段组
Toolset 和 ACF 中的可重复字段组在 WordPress 管理后台中看起来非常相似。
以下是如何在 Toolset 中设置可重复字段组并使用它来编辑内容:
在页面和模板中显示可重复字段组
在 WordPress 管理后台中创建可重复字段组后,您可能希望在网站前端显示它们。
在设计可重复字段组在前端的显示方式时,您只需创建一个模板,WordPress 会将其用于所有可重复项目。无需为组中的每个项目复制您的设计。
ACF 和 Toolset 在这方面也采取了非常不同的方法。
ACF 提供了一个丰富的 PHP API,用于向模板添加字段。您需要编辑负责该文章类型的模板,并调用显示字段组的函数。为此,您需要对 PHP 和 HTML 有基本的了解。有关示例,请参阅 ACF’s Repeater Field 页面中的“Template Usage”部分。
Toolset 也有您可以使用的 PHP API,但 Toolset 的最大吸引力在于,您可以使用区块或简码来设计模板,而无需编写 PHP。在 Toolset 中,您需要创建一个用于显示可重复字段组的视图(View)。您可以将此 View 添加到任何页面或模板。
可重复字段组的动态显示
由于您使用一些代码来显示可重复字段组,因此您可以为其设计动态显示。例如,您可以添加过滤器、分页和条件逻辑。
假设我们的画廊示例应该包含项目链接,但它们是可选的。当画廊项目具有目标 URL 时,我们将显示一个链接。如果我们使用 ACF 构建它,我们将编写 PHP 代码来检查该字段并有条件地输出链接。Toolset 通过使用其条件区块,使这一过程变得简单得多。这样,我们可以检查组中字段的值,并根据条件显示元素。
如何翻译可重复字段组
ACF 和 Toolset 均与 WPML 兼容。对于 ACF,我们构建了一个名为 ACFML (ACF Multilingual) 的粘合插件。您可以在我们的 ACF Multilingual 文档页面了解如何使用它。
Toolset “开箱即用”,与 WPML 兼容,无需额外的粘合插件。我们编写了一份关于使用 WPML 翻译 Toolset 网站的完整指南。还有一篇简短的页面介绍了如何翻译可重复字段组。
由于我们在前端动态显示可重复字段组,因此我们只需翻译它们的值。输出将“自动”生成。如果没有翻译,它将显示原始内容;一旦我们进行了翻译,它将显示翻译后的文本。