- สถานะ
- แก้ไขแล้ว
- รายงานสำหรับ
- WPML Multilingual CMS 4.8.4
- แก้ไขใน
- WPML Multilingual CMS 4.8.6
- แท็กหัวข้อ
- Bug, Compatibility
ภาพรวมของปัญหา
เมื่อใช้ Elementor Pro ร่วมกับ WPML หากไม่ได้ติดตั้งการแปลสื่อ โลโก้ไซต์ที่กำหนดไว้ในภาษาเริ่มต้นจะไม่ปรากฏบนหน้าที่แปล แต่ Elementor จะแสดงรูปภาพตัวแทนเริ่มต้นแทนที่โลโก้ ลักษณะการทำงานนี้จะเกิดขึ้นเมื่อใช้วิดเจ็ต “Site Logo” ของ Elementor ในเทมเพลตที่สร้างด้วย Theme Builder
วิธีแก้ปัญหาชั่วคราว
มีวิธีแก้ปัญหาชั่วคราว 2 วิธีที่สามารถใช้ได้:
ตัวเลือกที่ 1: ติดตั้ง WPML Media Translation
การติดตั้งส่วนเสริม WPML Media Translation จะช่วยแก้ปัญหานี้โดยตรวจสอบให้แน่ใจว่าไฟล์แนบสื่อที่แปลแล้วได้รับการจัดการอย่างถูกต้อง
ตัวเลือกที่ 2: ใช้ฟิลเตอร์แบบกำหนดเองเพื่อข้ามการแปลตัวเลือกโลโก้
โปรดตรวจสอบให้แน่ใจว่าคุณได้สำรองข้อมูลเว็บไซต์ของคุณอย่างครบถ้วนก่อนดำเนินการต่อ
เปิด: ไฟล์ functions.php ในธีมของคุณหรือปลั๊กอินฟังก์ชันการทำงานแบบกำหนดเอง
เพิ่ม: ข้อมูลโค้ดต่อไปนี้ที่ท้ายไฟล์:
add_filter('option_site_logo', function ($value) {
global $wp_filter;
$tag = 'option_site_logo';
$prio = 11;
if (isset($wp_filter[$tag])) {
$hook = $wp_filter[$tag];
if ($hook instanceof WP_Hook) {
if (isset($hook->callbacks[$prio]) && is_array($hook->callbacks[$prio])) {
$hook->callbacks[$prio] = [];
}
}
elseif (is_array($hook) && isset($hook[$prio]) && is_array($hook[$prio])) {
$wp_filter[$tag][$prio] = [];
}
}
return $value;
}, 10, 1);
ทางเลือก: ล้างแคชเว็บไซต์ของคุณและสร้างไฟล์ CSS ของ Elementor ใหม่
เราทราบถึงปัญหานี้แล้วและนักพัฒนาของเรากำลังดำเนินการแก้ไขอย่างถาวร