- 状态
- 已解决
- 报告针对
- Ninja Forms Multilingual 0.3.0
- 解决于
- Ninja Forms Multilingual 0.3.1
- 相关插件/主题
- Ninja Forms
- 主题标签
- Compatibility
问题概述
在使用 Ninja Forms 及其可重复字段功能时,您可能会遇到翻译问题。尽管可以使用 WPML 字符串翻译来翻译这些字段,但在翻译父级可重复字段标签时,子字段的翻译会被覆盖。
临时解决方法
请确保在继续操作之前对您的站点进行完整备份。
- 打开 …/wp-content/plugins/wpml-ninja-forms/classes/Hooks/NinjaForms/Strings.php 文件。
- 找到第 62 行。
- 将以下代码:
if ( $this->getFormId() && $this->notEmpty( 'settings', $field ) && $this->notEmpty( 'type', $field['settings'] ) && $this->isTranslatableFieldType( $field['settings']['type'] ) ) { $field['settings'] = $this->getPackage()->translateField( $field['settings'], $this->getId( $field ) ); }替换为:if ( $this->getFormId() && $this->notEmpty( 'settings', $field ) && $this->notEmpty( 'type', $field['settings'] ) && $this->isTranslatableFieldType( $field['settings']['type'] ) ) { if (! array_key_exists('repeaterField', $field['settings'] ) && $field['settings']['repeaterField'] != true ) { $field['settings'] = $this->getPackage()->translateField( $field['settings'], $this->getId( $field ) ); } }