- สถานะ
- เปิด
- รายงานสำหรับ
- 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 ); }