WPML
สถานะ
เปิด
รายงานสำหรับ
WPML Multilingual CMS 4.6.13
แท็กหัวข้อ
Bug

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

ฟิลด์กำหนดเองที่มีคีย์ซับซ้อน (เช่น มีอักขระพิเศษอย่างเครื่องหมายไปป์ |) อาจแปลไม่ถูกต้องใน WPML ซึ่งส่งผลให้ค่าที่แปลแล้วถูกจัดเก็บเป็นอาร์เรย์แบบ serialized แทนที่จะเป็นสตริงข้อความธรรมดา ทำให้เกิดปัญหาในการแสดงค่าฟิลด์กำหนดเองที่แปลแล้ว

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

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


  • เปิดไฟล์ …/sitepress-multilingual-cms/classes/translation-jobs/class-wpml-element-translation-package.php

  • ค้นหาบรรทัดที่ 260

  • แทนที่:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . $field_name . '-?#', '', $field_id_string, 1 );
    	}

  • ด้วย:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . preg_quote($field_name) . '-?#', '', $field_id_string, 1 );
    	}

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