- สถานะ
- เปิด
- รายงานสำหรับ
- WPML Multilingual & Multicurrency for WooCommerce 5.2.1
- แท็กหัวข้อ
- Bug, WCML
ภาพรวมของปัญหา
เมื่อเปิดใช้งาน WPML Multilingual & Multicurrency for WooCommerce เวลาตอบสนองสำหรับการอัปเดตสินค้าจำนวนมากผ่าน REST-API จะนานขึ้นอย่างมาก
วิธีแก้ปัญหาชั่วคราว
ก่อนใช้วิธีแก้ปัญหาชั่วคราวเหล่านี้ โปรดอย่าลืมพิจารณาถึงข้อควรระวังที่อาจเกิดขึ้น
เป็นไปได้ที่ข้อมูลของคุณอาจไม่ได้รับการซิงโครไนซ์ระหว่างการแปลทั้งหมด และอาจแสดงข้อมูลที่ไม่อัปเดต
เพื่อพยายามแก้ไขปัญหาการอัปเดตสินค้า คุณสามารถลองทำดังนี้:
add_filter('rest_pre_dispatch', function ($result, $server, $request) {
global $woocommerce_wpml;
$params = serialize($request->get_params());
if (str_contains($params, 'stock_quantity')){
remove_filter( 'get_post_metadata', [ $woocommerce_wpml->products, 'filter_product_data' ] );
}
return $result;
}, 10, 3);
หากคุณยังคงพบปัญหาความล่าช้าและสินค้าของคุณถูกกำหนดให้อยู่ในหลายหมวดหมู่และสินค้ามีการแปลหลายภาษา คุณสามารถลองข้ามการนับ term ใหม่ได้
add_filter( 'woocommerce_product_recount_terms', 'bypass_term_recount_on_rest' );
function bypass_term_recount_on_rest( $value ){
if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
$value = false;
}
return $value;
}