ฉันมีเว็บไซต์ประมาณ 20 แห่งที่มีคำแปลทั่วไป ฉันไม่ต้องการเข้าไปเป็นผู้ดูแลของแต่ละไซต์ทุกครั้งที่มีการอัพเดทไฟล์ po
เป็นไปได้หรือไม่ที่จะนำเข้าไฟล์ po โดยใช้ Drush
ฉันมีเว็บไซต์ประมาณ 20 แห่งที่มีคำแปลทั่วไป ฉันไม่ต้องการเข้าไปเป็นผู้ดูแลของแต่ละไซต์ทุกครั้งที่มีการอัพเดทไฟล์ po
เป็นไปได้หรือไม่ที่จะนำเข้าไฟล์ po โดยใช้ Drush
คำตอบ:
ผมพบว่าวิธีการทำเช่นนี้โดยใช้ Drush และLocalization ปรับปรุง
drush en l10n_update
ตอนนี้คุณสามารถใส่ไฟล์ po ของคุณเองในเส้นทางท้องถิ่น (เช่นเว็บไซต์ / ทั้งหมด / การแปล) หากคุณมีการแปลสำหรับโมดูลของคุณเองแล้วคุณตั้งชื่อตามแบบแผนการตั้งชื่อนี้:
modulename-version.language.po
ดังนั้นไฟล์โปภาษาสวีเดนสำหรับ 'my_module' เวอร์ชัน 7.x-1.1 จึงมีชื่อว่า:
my_module-7.x-1.1.sv.po
ตอนนี้คุณมีการตั้งค่าทุกอย่างและคุณสามารถเริ่มอัปเดตการแปลไซต์ของคุณด้วย Drush:
drush l10n-update-refresh # Looks for new po-files
drush l10n-update # Updates translations
project
คุณสมบัติมิฉะนั้นโมดูลจะถูกละเว้นอย่างสมบูรณ์
--mode=overwrite
เมื่อทำงานdrush l10n-update
มิฉะนั้นการปรับเปลี่ยนในแฟ้ม .po ของฉันจะไม่ถูกนำเข้าบัญชี (แม้ว่าmode
จะถูกตั้งไปแล้วoverwrite
ในแบ็กเอนด์)
ในขณะนี้ยังไม่มีวิธีการใช้งาน Drush แต่คุณสามารถใช้โมดูลLocalization Updateได้
คุณสามารถลองใช้ Selenium IDEหรือสคริปต์ Selenium หากคุณมีเว็บไซต์จำนวนมาก นี่เป็นทางออกที่ดีที่สุดที่ฉันสามารถนำมาแปลเป็นแบบส่งออกได้
นอกจากนี้โมดูลdrush Drush Language Commandsยังรองรับการนำเข้าและส่งออกไฟล์ po
ทางออกที่ดีที่สุดของคุณคือใช้Potx ที่ส่งออกได้โมดูล
มันเปิดเผยคำสั่ง Drush drush potx-import-all
สำหรับผู้ที่มาที่นี่หลายปีต่อมาคำสั่งเดียวกันสำหรับ Drush 9 คือ:
de.po
ภาษาเยอรมันcontroller-7.x-1.0.de.po
ฉันได้เปลี่ยนชื่อเป็นกับชื่อโมดูลของฉันและมันต่อท้ายรุ่นของโมดูลของฉันเช่น: ผลักดันมันด้วยคอมไพล์และดำเนินการคำสั่ง drush แต่มันตรวจไม่พบไฟล์ po-push ที่ใหม่ล่าสุดของฉันและพูดว่า ฉันทำผิดตรงไหน