ตามที่กล่าวไว้ในความคิดเห็น เริ่มต้นด้วยสตริงภาษาอังกฤษเสมอและแปลแม้ว่ามันจะเป็นเว็บไซต์ภาษาเดียว เพื่อลดความเจ็บปวดนี่คือสิ่งที่ฉันทำเสมอเพื่อให้สตริงและการแปลอยู่ในธีม:
เปิดของคุณ THEMENAME.info.yml
ไฟล์และเพิ่มสิ่งต่อไปนี้:
'โครงการแปลส่วนต่อประสาน': THEMENAME
'รูปแบบเซิร์ฟเวอร์การแปลอินเตอร์เฟส': 'themes/custom/THEMENAME/translations/%language.po'
จากนั้นสร้าง คำแปล
ไดเร็กทอรีภายในธีมของคุณและคุณสามารถเพิ่มการแปลของคุณได้ .po
ไฟล์ต่างๆ เช่น fr.po
สำหรับภาษาฝรั่งเศสหรือ สพป
สำหรับชาวนอร์เวย์
นี่คือไวยากรณ์ที่คุณต้องมีภายในของคุณ .po
ไฟล์:
msgstr "สวัสดีชาวโลก"
msgstr "บงชู เลอ มงด์"
ดังนั้นเมื่อใดก็ตามที่คุณเขียน สวัสดีชาวโลก
สตริงใน เสื้อ()
ฟังก์ชั่นหรือเป็นตัวกรองในไฟล์ twig ดังนี้: {{ สวัสดีชาวโลก|t }}
มันจะรู้ว่าต้องนำเข้าคำแปลจากที่นั่น
แต่จะทริกเกอร์การนำเข้าการแปลได้อย่างไร
ตำแหน่งที่ตั้งของ drush: ตรวจสอบ
- ไม่จำเป็น แต่ตรวจสอบว่ามีการเพิ่มสตริงใหม่หรือไม่
ตำแหน่งที่ตั้งของ drush: อัปเดต
- นำเข้าการแปลและคุณทำเสร็จแล้ว
โปรดทราบว่าคุณสามารถเพิ่ม/เรียกใช้สิ่งนี้ในขั้นตอนการปรับใช้ของคุณได้เช่นกัน และทำให้ชีวิตของคุณง่ายขึ้น ไม่จำเป็นต้องแปล UI เพียงเพิ่มสตริงของคุณลงใน .po
ไฟล์เมื่อใดก็ตามที่คุณเขียนสตริงฮาร์ดโค้ดลงในไฟล์ของคุณ
อัปเดต: ไม่ได้สังเกตว่าเรากำลังพูดถึง Drupal 7 นี่หมายถึง Drupal 8 สำหรับผู้อ่านในอนาคต