- 상태
- 해결됨
- 보고된 제품
- WPForms Multilingual 0.4.1
- 해결된 버전
- WPForms Multilingual 0.5.0
- 주제 태그
- Compatibility
문제 개요
WPML 및 WPForms Multilingual 애드온과 함께 WPForms를 사용하는 경우, 반복 필드가 포함된 양식의 알림 이메일에 올바른 필드 이름 대신 잘못된 필드 레이블(예: “Field ID #6_2”)이 표시됩니다. 또한 해당 반복 필드 내에 드롭다운 필드가 있는 경우, 오류가 발생하여 알림이 전송되지 않습니다.
임시 해결 방법
진행하기 전에 사이트의 전체 사이트 백업을 반드시 수행하세요.
- …/wp-content/plugins/wpml-wpforms/classes/Hooks/WpForms/Notifications.php 파일을 여세요.
- 라인 .을 찾으세요.
- 변경 전:
foreach ( $fields as $key => &$field ) { $field['name'] = $formPostFields[ $key ]['label']; $entryFields = Obj::propOr( [], 'fields', $entry ); if ( array_key_exists( $key, $entryFields ) ) { $field['value'] = $this->getFieldValue( $field, $entry['fields'][ $key ], $formPostFields[ $key ], $translatedFields[ $key ] ); } } - 변경 후:
foreach ( $fields as $key => &$field ) { $key = strpos( $key, '_' ) !== false ? substr( $key, 0, strpos( $key, '_' ) ) : $key; $field['name'] = $formPostFields[ $key ]['label']; $entryFields = Obj::propOr( [], 'fields', $entry ); if ( array_key_exists( $key, $entryFields ) ) { $field['value'] = $this->getFieldValue( $field, $entry['fields'][ $key ], $formPostFields[ $key ], $translatedFields[ $key ] ); } }