- สถานะ
- แก้ไขแล้ว
ภาพรวมของปัญหา
ผู้ให้บริการโฮสติ้งบางราย เช่น Pantheon มีการรักษาความปลอดภัยที่เข้มงวดมาก และปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดที่แนะนำสำหรับการปรับใช้เว็บไซต์ WordPress
ผู้ให้บริการโฮสติ้งเหล่านี้รักษาความปลอดภัยให้กับอินสแตนซ์ของตน และอนุญาตให้เว็บเซิร์ฟเวอร์มีสิทธิ์ในการเขียนลงในโฟลเดอร์ uploads เท่านั้น
หากคุณกำลังใช้ผู้ให้บริการโฮสติ้งดังกล่าว วิธีการใหม่ในการแปลด้วยการแปลสตริงจะสร้างปัญหาให้กับคุณ เนื่องจากตัวเซิร์ฟเวอร์เองและ WPML การแปลสตริง จะไม่ได้รับอนุญาตให้เขียนข้อมูลลงในโฟลเดอร์ /wp-content/languages/ และโฟลเดอร์ย่อยที่อยู่ภายใต้โฟลเดอร์ดังกล่าว
วิธีแก้ปัญหาชั่วคราว
เพื่อแก้ไขปัญหานี้และให้ทุกอย่างทำงานได้ตามปกติ คุณควรกำหนดโฟลเดอร์สำหรับภาษาของ WordPress ใหม่ (โดยปกติจะอยู่ที่ /wp-content/languages/ )
สำหรับโฮสติ้งของ Pantheon คุณสามารถทำได้โดยเพิ่มโค้ดนี้ลงใน wp-config.php
define( 'WP_LANG_DIR', $_SERVER['HOME'] .'/files/languages' );
เราขอแนะนำให้เพิ่มโค้ดนี้หลังจาก:
/** Define appropriate location for default tmp directory on Pantheon */
define('WP_TEMP_DIR', $_SERVER['HOME'] .'/tmp');
จากนั้นคุณสามารถลองไปที่ แดชบอร์ด > อัปเดต และเรียกใช้ระบบของ WordPress เพื่อรับชุดภาษาทั้งหมดโดยกดปุ่ม “อัปเดตการแปล”
มีรายงานแจ้งให้เราทราบว่าคุณอาจต้องสร้างโฟลเดอร์ /languages/ และโฟลเดอร์ /languages/wpml/ ด้วยตนเองก่อนที่ทุกอย่างจะทำงานได้อย่างถูกต้อง (หากยังไม่ได้สร้างไว้)