- สถานะ
- แก้ไขแล้ว
- รายงานสำหรับ
- WPML Multilingual & Multicurrency for WooCommerce 5.5.2.1
- แก้ไขใน
- WooCommerce Multilingual & Multicurrency 5.5.2.2
- แท็กหัวข้อ
- WCML
ภาพรวมของปัญหา
ใน WPML Multilingual & Multicurrency for 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 );
- หลังจากใช้การเปลี่ยนแปลงเหล่านี้ คุณต้องบันทึกหรืออัปเดตผลิตภัณฑ์ที่มีปัญหานี้ด้วยตนเอง