WPML
สถานะ
เปิด
รายงานสำหรับ
WPML Multilingual & Multicurrency for WooCommerce 5.3.2
แท็กหัวข้อ
Bug

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

ในปัจจุบัน บันทึกคำสั่งซื้อที่เพิ่มโดยอัตโนมัติหลังจากการซื้อครั้งแรกอาจปรากฏในภาษาที่ใช้ทำรายการสั่งซื้อ แทนที่จะเป็นภาษาเริ่มต้นของหน้าจัดการเว็บไซต์ ปัญหานี้เกิดขึ้นเฉพาะในสถานการณ์ที่ผู้ใช้ทำการซื้อจนเสร็จสมบูรณ์ในภาษารอง

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

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


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

  • เพิ่มโค้ดต่อไปนี้:
    // The action is added only once, we are removing it just after it's called.
    // The same happens for the hook to restore the language once the note is added.
    $temporarilySwitchToDefaultLang = function() use ( &$temporarilySwitchToDefaultLang ) {
        add_action( 'woocommerce_order_status_processing', $temporarilySwitchToDefaultLang );
        do_action( 'wpml_switch_language', apply_filters( 'wpml_default_language', null ) );
    
        $restoreLang = function() use ( &$restoreLang ) {
            remove_action( 'woocommerce_order_note_added', $restoreLang );
            do_action( 'wpml_switch_language', null );
        };
    
        add_action( 'woocommerce_order_note_added', $restoreLang );
    };
    
    add_action( 'woocommerce_order_status_processing', $temporarilySwitchToDefaultLang );

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