WPML
สถานะ
แก้ไขแล้ว
รายงานสำหรับ
WPML Multilingual & Multicurrency for WooCommerce 5.2.0
แก้ไขใน
WCML 5.3.0
ปลั๊กอิน/ธีมที่เกี่ยวข้อง
Elementor, Divi
แท็กหัวข้อ
Compatibility

ภาพรวมของปัญหา

ในสถานการณ์ที่คุณสร้างเทมเพลต Divi เพื่อแสดงผลสำหรับ All Archive pages และคุณยังมีไฟล์ taxonomy-product_cat.php ในธีมของคุณ จะเกิดข้อขัดแย้งขึ้น กล่าวคือ เทมเพลต Divi ของคุณจะแสดงผลเฉพาะในภาษาเริ่มต้นเท่านั้น เมื่อคุณสลับภาษา ระบบจะแสดงเทมเพลตจากไฟล์ taxonomy-product_cat.php แทนเทมเพลต Divi

วิธีแก้ปัญหาชั่วคราว

โปรดตรวจสอบให้แน่ใจว่าได้สำรองข้อมูลทั้งหมดของเว็บไซต์ก่อนดำเนินการต่อ


  • เปิดไฟล์ functions.php ของธีม

  • เพิ่มโค้ดต่อไปนี้:
    add_filter('template_include', function ($template){
    	if (function_exists('wc_locate_template') && strpos($template, 'Divi/includes/builder') !== false && !file_exists(wc_locate_template(basename($template)))) {
    		global $woocommerce_wpml;
    		remove_filter( 'template_include', [ $woocommerce_wpml->store, 'template_loader' ], 100 );
    	}
    	
    	return $template;
    }, 99);

หมายเหตุ


ปัญหานี้อาจเกิดขึ้นกับเทมเพลต Elementor ได้เช่นกัน ในกรณีนี้ คุณจะต้องใช้โค้ดนี้แทน:
add_filter('template_include', function ($template){
	if (function_exists('wc_locate_template') && strpos($template, 'elementor') !== false && !file_exists(wc_locate_template(basename($template)))) {
		global $woocommerce_wpml;
		remove_filter( 'template_include', [ $woocommerce_wpml->store, 'template_loader' ], 100 );
	}
	
	return $template;
}, 12);

ปัญหาที่ทราบแล้วทั้งหมด →