WPML
الحالة
محلولة
أُبلغ عنها لـ
WPForms Multilingual 0.4.1
تم حلها في
WPForms Multilingual 0.5.0
وسوم الموضوع
Compatibility

نظرة عامة على المشكلة

عند استخدام WPForms مع WPML وملحق WPForms Multilingual، تعرض النماذج التي تحتوي على حقول تكرار تسميات حقول غير صحيحة (على سبيل المثال، «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 ] );
        }
    }
            

جميع المشاكل المعروفة →