- สถานะ
- แก้ไขแล้ว
ภาพรวมของปัญหา
หากคุณใช้งานปลั๊กอินสร้างหน้าเว็บในเว็บไซต์ของคุณ คุณอาจสังเกตเห็นว่าหากคุณเพิ่มอีโมจิลงในบล็อกเนื้อหา บล็อกนั้นจะไม่พร้อมสำหรับการแปลในตัวแก้ไขการแปลขั้นสูงหรือตัวแก้ไขการแปลแบบคลาสสิก
วิธีแก้ปัญหาชั่วคราว
ปัญหานี้เกิดขึ้นเนื่องจากข้อขัดแย้งของ Collation ในตาราง หากเซิร์ฟเวอร์ของคุณรองรับ Collation utf8mb4_general_ci คุณสามารถทำตามขั้นตอนนี้ได้หลังจากสำรองข้อมูลเว็บไซต์ของคุณอย่างสมบูรณ์แล้ว:
- เปิดไฟล์ functions.php ของธีมของคุณ
- เพิ่มโค้ดนี้:
// Notice admin_init - will only run in backend add_action('admin_init', function() { require_once(ABSPATH.'/wp-admin/includes/upgrade.php'); global $wpdb; $mytables=$wpdb->get_results("SHOW TABLES"); foreach ($mytables as $mytable) { foreach ($mytable as $t) { maybe_convert_table_to_utf8mb4( $t ); } } }); - ไปที่หน้าใดก็ได้ในระบบหลังบ้านของเว็บไซต์ของคุณ
- ลบโค้ดออก
ตอนนี้ Collation ของตารางฐานข้อมูลของคุณควรเป็น utf8mb4_general_ci แล้ว และเนื้อหาจะพร้อมใช้งานสำหรับการแปล
ในกรณีที่ฐานข้อมูลของเว็บไซต์คุณใช้ Collation latin1 คุณสามารถใช้วิธีแก้ปัญหาชั่วคราวต่อไปนี้แทนได้:
- สำรองข้อมูลเว็บไซต์ของคุณอย่างสมบูรณ์ก่อนดำเนินการต่อ
- ไปที่: https://github.com/interconnectit/Search-Replace-DB.
- ดาวน์โหลดไฟล์ ZIP ของโปรเจกต์และแตกไฟล์
- อัปโหลดโฟลเดอร์ที่แตกไฟล์แล้วไปยังการติดตั้ง WordPress ของคุณโดยใช้ไคลเอนต์ FTP
- ไปที่โฟลเดอร์ดังกล่าว – เช่น http://example.com/Search-Replace-DB-master/
- กรอกชื่อฐานข้อมูล เซิร์ฟเวอร์ ผู้ใช้ และรหัสผ่านของคุณ คุณสามารถรับค่าเหล่านั้นได้จากไฟล์ wp-config.php ของคุณ
- คลิกและทดสอบการเชื่อมต่อ
- เลื่อนไปที่ด้านล่างแล้วคลิกปุ่ม ”Convert to UTF8MB4”
- รอให้กระบวนการเสร็จสิ้น
- เมื่อเสร็จแล้วให้คลิกปุ่ม ”Delete me”