WPML

在开始之前

安装并激活以下插件:

使用您网站的源语言在 Ninja Forms 中构建表单,包括任何多步骤结构、条件逻辑、验证文案以及您需要的操作(成功消息、提交重定向、电子邮件、集成操作)。在表单功能完善后,将其发送以进行翻译。

自动翻译所有内容为您处理此操作

如果您的网站开启了自动翻译所有内容,您无需手动发送表单进行翻译。WPML 会在后台提取新建和更新的表单以及其余内容并进行翻译。下面的页面插入步骤仍然适用,但发送表单进行翻译的步骤是自动的。本页面的其余部分介绍了在翻译部分内容:由您选择要翻译的内容模式下的网站(或您希望在自动队列之前翻译的表单)的手动操作路径。

发送表单进行翻译

  1. 打开 WPML > 翻译 > 仪表板
  2. 展开 Ninja Forms 部分。
  3. 勾选您要翻译的表单。
  4. 选择一种翻译方式:PTC(推荐)、您的译员或自己翻译
  5. 单击翻译

字段、选项、操作(成功消息、电子邮件、提交重定向、集成)以及每个字段的验证消息都会进入同一个翻译任务。

将表单插入翻译后的页面

Ninja Forms 位于页面或文章中,通常通过 Ninja Forms 区块[ninja_form id="X"] 简码实现。多语言插入规则如下:

在页面的每个语言版本上使用相同的区块或简码。不要为每种语言创建单独的表单。

流程如下:

  1. 在您的源语言中构建一次表单。
  2. 发送表单进行翻译(或让自动翻译所有内容提取它)。
  3. 使用 Ninja Forms 区块或 [ninja_form] 简码将表单插入源语言页面。
  4. 通过 WPML > 翻译 > 仪表板翻译页面,就像翻译任何其他页面一样。表单嵌入将保留在翻译后的页面上。
  5. 当访客打开翻译后的页面时,Ninja Forms Multilingual 会自动以访客的语言提供表单——相同的表单 ID、相同的简码、翻译后的内容。

您不需要为每种语言使用不同的表单 ID。翻译链接到源表单;Ninja Forms Multilingual 会在渲染时解析正确的语言版本。

例外情况——当您确实希望每种语言有不同的表单时。如果您需要每种语言在结构上不同的表单(不同的字段、不同的操作、不同的逻辑),请构建单独的 Ninja Forms(每种语言一个),并使用该翻译的 WordPress 编辑器将其简码插入页面的匹配语言版本中。这是唯一一种跨语言简码不同的情况。

页面构建器注意事项

如果您的页面是使用 Divi、Elementor 或其他页面构建器构建的,并且这些构建器将简码包装在自己的文本模块中,那么简码在翻译后可能并不总是能完好保留。如果翻译后的页面显示源语言表单,请在页面构建器中打开翻译后的页面,并在其中重新插入表单的区块或简码。原生的 WordPress 区块编辑器和经典编辑器没有这个问题。

字段标签和字段类型

每个 Ninja Forms 字段标签、占位符和选项都会出现在翻译任务中。完整的字段目录都可翻译:文本、段落、姓名、电子邮件、地址、电话、列表(选择、单选、复选框、多选)、数字、日期/时间、文件上传、提交。

中继器字段在行级别进行翻译:添加行按钮标签和每行的字段标签位于翻译任务中。译员可以看到完整的中继器结构,每个子字段的标签作为可翻译的行。

图像选择字段

图像选择字段将缩略图与文本标签配对。Ninja Forms Multilingual 会针对每种语言翻译标签,而图像保持共享。基于图片的的选择器在每种语言中的工作方式相同;只有标题会被翻译。

多步骤表单

对于多步骤表单,每个步骤标题和每个步骤的导航按钮(上一步下一步提交)将作为单独的行进行翻译。每个步骤的条件逻辑在翻译后仍然有效。值映射可保持底层选择值在各语言之间对齐。

翻译后,请在每种语言中走一遍多步骤流程,以确认导航读起来自然,并且条件分支仍然在正确的步骤上触发。

布局和样式

Ninja 的布局和样式设计器输出在翻译时不会丢失布局。网格、列和视觉样式保持不变;只有字符串内容会根据语言发生变化。无需特殊步骤:翻译表单,布局自然会随之保留。

保存进度

对于启用了保存进度的表单,访客端的提示会被翻译:

  • 保存进度按钮标签。
  • 恢复链接电子邮件主题和正文。
  • 保存后的成功消息。

这三项都在翻译任务中。翻译后,请通过在每种语言的表单中途保存来进行测试,并确认恢复电子邮件以正确的语言到达。

每字段验证消息

每个字段都有自己的验证文案:必填字段错误、格式错误、自定义验证消息。每一项都会出现在翻译任务中。反垃圾邮件和蜜罐文案通过 WPML 字符串翻译进行翻译(而不是表单翻译任务)。

成功消息操作和提交重定向操作

成功消息操作的内联感谢文本会按语言进行翻译。提交重定向操作的 URL 也是可翻译的。为每种语言设置不同的感谢 URL,以便访客在提交后登陆与语言匹配的页面。

电子邮件操作

表单上的每个电子邮件操作都独立翻译。收件人发件人姓名主题电子邮件消息都会出现在翻译任务中。具有多个电子邮件操作(例如,管理员通知 + 访客确认)的表单会单独翻译每个操作,因此每种语言的文案都是独立的。

一个已知限制

电子邮件操作模板内的合并标签不会按语言翻译。合并标签插入使用源语言模板,因此表单数据会替换进去,但周围的句子仍保留为源语言。此问题在勘误页面上有记录。临时解决方法:在语言差异很重要的地方,构建不带合并标签的周围句子,或者对于不太重要的文案接受此限制。

集成操作

Ninja Forms 的操作架构意味着每个集成都是基于表单的工作流步骤。每个操作面向访客的文案都会进行翻译:

  • Webhook 操作。请求正文和任何面向访客的标签都会翻译;字段值保持规范,因此接收端点不会中断。
  • Mailchimp / AWeber / Constant Contact / ActiveCampaign / Campaign Monitor / CleverReach / Drip / EmailOctopus / Emma / Kit / MailerLite / MailPoet。如果列表/细分/标签标签作为表单级字符串存在,它们就会被翻译。
  • HubSpot / Salesforce / ZohoCRM。管道/阶段/表单标签会进行翻译。
  • Zapier / Slack / Trello。频道、标签和 webhook 表单名称字符串会进行翻译。

对于支付集成(StripeAuthorize.netElavonPayPal),购买描述和面向访客的按钮标签会进行翻译。使用支付处理器的测试模式在每种语言中运行测试交易,并确认收据文案正确无误。

一个已知限制——PDF 表单提交

当 Ninja Forms Multilingual 在配置了翻译的表单上处于活动状态时,Ninja Forms PDF Form Submission 附加组件不会生成 PDF。此问题在论坛帖子中有记录。临时解决方法:在兼容性问题解决之前,禁用已翻译表单的 PDF 附加组件。

常见陷阱

  • 电子邮件操作正文具有未翻译的合并标签周围内容。已知限制(见上文)。重组电子邮件正文,将翻译后的文本放在合并标签插入之外,或者接受此限制。
  • 管理员通知电子邮件以源语言到达。确认您正在测试的电子邮件操作在您上次编辑后已重新发送以进行翻译。如果仍然损坏,请检查相关的论坛帖子以了解状态。
  • 条件逻辑在翻译后的表单中停止触发。翻译后,源语言中的选择标签被编辑过。重新发送表单进行翻译以刷新值映射。
  • PDF 表单提交停止工作。禁用附加组件或删除翻译,等待兼容性问题解决。

作者:Amir · 最后更新于 2026年7月2日

作者:Amir · 最后更新时间:2026年7月2日