WPML
상태
해결됨
보고된 제품
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 ] );
        }
    }
            

알려진 모든 문제 →