WPML
الحالة
محلولة
أُبلغ عنها لـ
WPML Multilingual & Multicurrency for WooCommerce 5.5.2.1
تم حلها في
WooCommerce Multilingual & Multicurrency 5.5.2.2
وسوم الموضوع
WCML

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

في WPML متعدد اللغات وتعدد العملات لـ WooCommerce، قد يحدث عند ترجمة منتج متغير أن يكون التباين الافتراضي في اللغة الثانية إما مفقوداً أو معيّناً بشكل غير صحيح على 0.

يحدث هذا عندما تختلف قيمتا term_id وterm_taxonomy_id، وهو ما يمكن أن يحدث مع سمات المنتج العامة.

حل بديل مؤقت

يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.


  • افتح الملف …/woocommerce-multilingual/classes/Synchronization/Component/Attributes.php.

  • ابحث عن السطر 137.

  • استبدل:
    $defaultTermIdTranslations = $this->elementTranslations->get_element_translations( $defaultTermId, false, true );


  • بـ:
    $defaultTermIdTranslations = [];


  • في نفس الملف، ابحث عن السطر 149 واستبدل:
    $translatedDefaultTermId = $this->elementTranslations->element_id_in( $defaultTermId, $language );


  • بـ:
    $translatedDefaultTermId = apply_filters( 'wpml_object_id', $defaultTermId, $sanitizedAttributeName, false, $language );


  • بعد تطبيق هذه التغييرات، تحتاج إلى حفظ أو تحديث المنتجات التي تواجه هذه المشكلة يدوياً.

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