วิธีแปลปลั๊กอินและธีม WordPress โดยอัตโนมัติด้วย Google Translate
เผยแพร่แล้ว: 2019-07-31เราทุกคนเคยได้ยินสถิติว่า WordPress มีอำนาจมากกว่า 33% ของเว็บไซต์แล้ว แต่คุณจะมั่นใจได้อย่างไรว่าปลั๊กอินหรือธีมของคุณสามารถใช้งานได้อย่างกว้างขวางที่สุดในระบบนิเวศ?
น่าแปลกที่ไซต์ WordPress น้อยกว่าครึ่งมีการตั้งค่าภาษาเป็นภาษาอังกฤษ! หากคุณยังไม่ได้ตั้งค่าการแปล นั่นหมายความว่ามากกว่า 50% ของผู้มีโอกาสเป็นลูกค้าของคุณอาจไม่สามารถใช้งานผลิตภัณฑ์ของคุณในภาษาที่พวกเขาเข้าใจได้ดีที่สุด
วิธีที่ดีที่สุดวิธีหนึ่งในการเปิดผลิตภัณฑ์ของคุณสู่สายตาชาวโลกคือการสร้างงานแปลคุณภาพสูงสำหรับข้อความที่ผู้ใช้เห็นทั้งหมด แต่ปัญหาคือการแปลใช้เวลานาน (ยิ่งคุณมีข้อความในผลิตภัณฑ์มากเท่าใด สตริงก็จะยิ่งมากขึ้นเท่านั้น แปล). การแปลยังต้องการความเชี่ยวชาญในภาษาต่างๆ ความรู้เกี่ยวกับวิธีจัดการไฟล์ MO และ PO และโดยรวม - ต้องใช้ความพยายามอย่างมาก
ฉันชื่อ Diego Imbriani และฉันเป็นนักพัฒนาปลั๊กอินตั้งแต่ปี 2011 ฉันขายปลั๊กอินผ่านบริษัท GreenTreeLabs ของฉัน และขณะนี้ผลิตภัณฑ์ของฉันมีการใช้งานบนเว็บไซต์ประมาณ 70,000 แห่งทั่วโลก
โชคดีที่ฉันพบวิธีที่จะช่วยบรรเทากระบวนการแปลทั้งหมด และทำให้การแปลปลั๊กอินและธีมง่ายขึ้นมาก
บทนำ
ฉันเพิ่งต้องการเพิ่มการแปลภาษาอิตาลีในปลั๊กอินตัวใดตัวหนึ่งของฉัน: Final Tiles Gallery สำหรับ WordPress ดังนั้นฉันจึงเปิดไฟล์ PO ของปลั๊กอินซึ่งมีสตริงที่แปลได้ทั้งหมด และฉันเริ่มแปลปลั๊กอินทีละบรรทัด
ไฟล์ที่แยกจากไฟล์ PO ภาษาอิตาลีของ Final Tiles Gallery
ไฟล์ PO ของ Final Tiles Gallery มีประมาณ 350 รายการ และการแปลทั้งหมดใช้เวลาประมาณ 2 ชั่วโมง และ – พูดตามตรง – ฉันไม่พบว่างานนี้น่าสนใจมาก ขณะที่ฉันกำลังค้นหาคำแปล ฉันสงสัยว่ามีวิธีแปลไฟล์ PO ของฉันโดยอัตโนมัติหรือไม่...
ฉันตัดสินใจทดลองกับ Google Translate API เล็กน้อย และจัดการเขียนโค้ดสคริปต์เพื่อทำงานให้สำเร็จ! ด้านล่างนี้ ฉันจะแนะนำคุณทีละขั้นตอน โดยแสดงให้คุณเห็นว่าคุณสามารถใช้สคริปต์ที่ฉันสร้างขึ้นเพื่อแปลปลั๊กอินหรือธีม WordPress ของคุณโดยอัตโนมัติได้อย่างไร
WordPress และภาษา
ฉันต้องยอมรับว่าฉันไม่เคยกังวลมากเกี่ยวกับการแปลปลั๊กอินของฉัน ฉันเป็นคนอิตาลี แต่ฉันมักใช้โปรแกรมและระบบปฏิบัติการเป็นภาษาอังกฤษ รู้สึก "แปลก" ที่จะใช้อินเทอร์เฟซผู้ใช้แบบใดก็ตามที่ไม่ใช่ภาษาอังกฤษ อาจจะเป็นแค่ฉัน
WordPress ถูกใช้โดยผู้คนนับล้านที่มีภูมิหลัง ภาษา และวัฒนธรรม – จากทั่วทุกมุมโลก เราไม่สามารถละเลยการแปลปลั๊กอินและธีมของเราได้
WordPress ถูกใช้โดยผู้คนหลายล้านคนไม่ว่าจะมาจากพื้นเพ, ภาษา, และวัฒนธรรมใดก็ตาม – จากส่วนใดส่วนหนึ่งของโลก เราไม่สามารถละเลยการแปลปลั๊กอินและธีมของเราได้ทวีต
ฉันขายปลั๊กอินของฉันโดยใช้ Freemius ซึ่งมีแดชบอร์ดที่ดีพร้อมการวิเคราะห์และสถิติที่มีประโยชน์อย่างยิ่ง เมื่อไม่กี่วันก่อน ฉันได้ดูตาราง "ภาษา 10 อันดับแรก" ที่คุณพบใน แดชบอร์ดนักพัฒนาซอฟต์แวร์ และแม้ว่าฉันจะรู้ว่าไซต์หลายแห่งที่ติดตั้ง Final Tiles Gallery ไม่ได้เป็นภาษาอังกฤษ แต่ฉันก็แปลกใจมากที่ พบว่าจากตัวอย่างการติดตั้งประมาณ 25,000 รายการ มีเว็บไซต์น้อยกว่า 50% เป็นภาษาอังกฤษ! นี่คือภาพรวม:
อย่างที่คุณเห็น ฝรั่งเศส เยอรมัน และรัสเซียสร้างผู้ใช้จำนวนมาก โดยมีทั้งหมดเกือบ 20%
ประโยชน์ของการแปลปลั๊กอินหรือธีม
สำหรับธุรกิจปลั๊กอินหรือธีมของ WordPress การแปลผลิตภัณฑ์ของเราเป็นโอกาสทางการตลาดด้วยเหตุผลหลายประการ:
ผู้ชมจำนวนมากขึ้น
ผู้ใช้ WordPress บางรายไม่ต้องการติดตั้งปลั๊กอินที่ไม่มีการแปลในภาษาของพวกเขา อาจเป็นได้จากหลายสาเหตุ แต่หลักๆ แล้วอาจเป็นเพราะพวกเขาไม่เข้าใจภาษาอังกฤษ
ในกรณีอื่นๆ ผู้ใช้อาจเข้าใจภาษาอังกฤษ แต่เพียงต้องการใช้ภาษาของตนเอง ดังนั้น เมื่อมีตัวเลือกระหว่างปลั๊กอินที่คล้ายกันสองตัว ลูกค้าเหล่านั้นจะเลือกหนึ่งตัวในภาษาของพวกเขา แม้ว่าปลั๊กอินอื่นจะดีกว่าเล็กน้อย
นอกจากนี้ยังสามารถเกี่ยวข้องกับเหตุผลทางวัฒนธรรม ตัวอย่างเช่น ด้วยเหตุผลทางประวัติศาสตร์ โดยเฉพาะคนฝรั่งเศสรุ่นเก่าที่ไม่ชอบภาษาอังกฤษ หากคุณ google “ทำไมคนฝรั่งเศสถึงเกลียดภาษาอังกฤษ” คุณจะพบบทความมากมายเกี่ยวกับหัวข้อนี้ นอกจากนี้ มีชาวฝรั่งเศสเพียง 40% เท่านั้นที่พูดภาษานี้ได้ ดังนั้นหากผลิตภัณฑ์ของคุณไม่ได้แปลเป็นภาษาฝรั่งเศส คุณจะสูญเสียส่วนแบ่งการตลาดของ WordPress ภาษาฝรั่งเศส 60% ทันที และหากมีทางเลือกอื่นในฝรั่งเศสสำหรับผลิตภัณฑ์ของคุณ คุณอาจสูญเสียพวกเขาทั้งหมดหรืออย่างน้อยก็ส่วนใหญ่ การวิเคราะห์ที่คล้ายคลึงกันนี้เกี่ยวข้องกับหลายประเทศในเอเชีย เช่น ญี่ปุ่น ที่ยังไม่ได้ "ทำให้เป็นอเมริกัน"
WordPress.org SEO
Vova Feldman ซีอีโอของ Freemius ได้เขียนเกี่ยวกับประโยชน์ของการแปล SEO ในที่เก็บ WordPress.org เล็กน้อย แต่ยังไม่สามารถเน้นย้ำได้มากพอ ความจริงก็คืออัลกอริธึมการค้นหาใน repo นั้นไวมากต่อการใช้ภาษาต่างๆ ใน readme.txt ของคุณ
การมุ่งเน้นความพยายามในการแปลของคุณไม่เพียงแต่ในสตริงผลิตภัณฑ์ของคุณเท่านั้น แต่ยังรวมถึง readme.txt ของคุณสามารถรวมการเข้าถึงการตลาดของคุณใน repo ในขณะที่ผู้ใช้ส่วนใหญ่ค้นหาเป็นภาษาอังกฤษ มีความชัดเจนตามสถิติสถานที่จาก WordPress.org ที่กล่าวถึงข้างต้นว่ามีผู้ใช้จำนวนมากที่ไม่ค้นหาในภาษาอังกฤษ ดังนั้นจึงจำกัดการเข้าถึงเฉพาะปลั๊กอินและธีมจำนวนมากที่มีให้เท่านั้น ที่เข้าใจภาษาอังกฤษ
อัลกอริธึมให้ผลลัพธ์ที่แตกต่างกันตามตำแหน่งที่ตั้งของการติดตั้ง WordPress ที่กำหนด – การแปลผลิตภัณฑ์ของคุณจะเอาชนะอุปสรรคนี้ในการเปิดรับผู้ใช้ที่คุณปกติไม่สามารถเข้าถึงได้
Vova พูดได้ดีมากว่า "สิ่งสำคัญที่สุด ตอนนี้การแปลสำคัญกว่าที่เคย!" – และยังคงเป็นจริงมานานกว่าหนึ่งปีแล้ว
ชื่อเสียง
การแปลปลั๊กอินหรือธีมของคุณมีผลในทางจิตวิทยาเชิงบวกต่อลูกค้าของคุณ ปลั๊กอินหรือธีมที่นำเสนอการแปลในภาษาของลูกค้าของคุณนั้นถือได้ว่าเป็นผลิตภัณฑ์คุณภาพสูง หมายความว่านักพัฒนาใช้เวลามากกว่าแค่ปัญหาทางเทคนิค ลูกค้าจะรับรู้ถึงคุณค่านี้และหวังว่าจะเห็นคุณภาพของผลิตภัณฑ์ของคุณในแบบที่ต่างออกไป
ปลั๊กอินหรือธีมที่นำเสนอการแปลในภาษาของคุณนั้นถือได้ว่าเป็นผลิตภัณฑ์คุณภาพสูง หมายความว่านักพัฒนาซอฟต์แวร์ดูแลที่จะใช้เวลามากกว่าแค่ปัญหาทางเทคนิคทวีต
ผู้ร่วมสมทบ
การเพิ่มการแปลให้กับปลั๊กอินหรือธีมของคุณสามารถสร้างผลกระทบต่อนักแปลโดยสมัครใจบนพื้นที่เก็บข้อมูล WordPress.org หากคุณเสนอปลั๊กอินหรือธีมฟรี ปลั๊กอินที่มีการแปลเพียงไม่กี่ภาษาก็ถือว่าได้รับความนิยมมากกว่าปลั๊กอินที่ไม่มีการแปลเลย ดังนั้นอาสาสมัครอาจมีแนวโน้มที่จะมีส่วนร่วมมากขึ้น
รายการสถิติการแปลบางส่วนสำหรับปลั๊กอิน Gutenberg
ตอนนี้เราเข้าใจประโยชน์ของการแปลผลิตภัณฑ์ของเราแล้ว คำถามต่อไปคือ เราควรรองรับกี่ภาษา?
การเลือกภาษาที่รองรับ
มาเริ่มกันโดยบอกว่าไม่มีการจำกัดจำนวนภาษาที่คุณสามารถสนับสนุนได้ แต่เราต้องพิจารณาบางสิ่งก่อนที่จะแปลปลั๊กอินหรือธีมของคุณเป็นทั้งหมด
ปัญหาคือถ้าคุณแปลทุกภาษาโดยใช้ Google Translate การแปลที่ไม่ถูกต้องย่อมมีอย่างหลีกเลี่ยงไม่ได้ ปัญหาที่เกิดขึ้นคือ คุณอาจได้รับคำติชมจากผู้ใช้เกี่ยวกับการแปลที่ไม่ถูกต้องในปลั๊กอินหรือธีมของคุณ
ในการแก้ไขปัญหานี้ ฉันขอแนะนำให้เริ่มต้นด้วยภาษายอดนิยม และข้อมูลประเภทนี้สามารถรับได้จาก 3 แห่ง ประการแรกคือ Freemius Developer Dashboard ตามที่กล่าวไว้ข้างต้น หากคุณไม่ได้ใช้ Freemius อีกตัวเลือกที่มีประโยชน์คือหน้าสถิติ WordPress.org ที่แสดงตำแหน่งที่ตั้ง WordPress ที่ได้รับความนิยมมากที่สุด อีกทางเลือกหนึ่งที่ดีคือการดูสถิติ Google Analytics สำหรับเว็บไซต์ผลิตภัณฑ์ของคุณ
สมัครสมาชิกและรับสำเนาของเราฟรี
หนังสือธุรกิจปลั๊กอิน WordPress
วิธีสร้างธุรกิจปลั๊กอิน WordPress ที่เจริญรุ่งเรืองในระบบเศรษฐกิจการสมัครสมาชิก
แบ่งปันกับเพื่อน
ป้อนที่อยู่อีเมลของเพื่อนของคุณ เราจะส่งอีเมลให้เฉพาะหนังสือเล่มนี้ เพื่อเป็นเกียรติแก่หน่วยลาดตระเวน
ขอบคุณสำหรับการแชร์
ยอดเยี่ยม - เพิ่งส่งสำเนา 'The WordPress Plugin Business Book' ไปที่ . ต้องการช่วยให้เรากระจายข่าวมากยิ่งขึ้นหรือไม่? ไปต่อ แบ่งปันหนังสือกับเพื่อนและเพื่อนร่วมงานของคุณ
ขอบคุณสำหรับการสมัคร!
- เราเพิ่งส่งสำเนา 'The WordPress Plugin Business Book' ของคุณไปที่ .
อีกครั้งมีการพิมพ์ผิดในอีเมลของคุณ? คลิกที่นี่เพื่อแก้ไขที่อยู่อีเมลและส่งอีกครั้ง
ไม่ว่าตัวเลขจะชี้ไปที่ใด คุณสามารถเลือกภาษาที่มีผู้ชมมากที่สุดได้ หากคุณเสนองานแปลสองสามรายการให้กับผู้ชมเหล่านั้นก่อน คุณสามารถขอให้ลูกค้าหรือเพื่อนร่วมงานบางส่วนของคุณตรวจสอบงานแปลก่อนที่จะเผยแพร่สู่สาธารณะ ดังนั้นคุณจะไม่ถูกล้นหลามกับคำติชมจากลูกค้าเกี่ยวกับปัญหาการแปลเล็กน้อย Fiverr ยังมีผู้เชี่ยวชาญจำนวนมากที่สามารถช่วยยืนยันการแปลของคุณ คุณสามารถลดภาระการสนับสนุนของคุณให้เหลือน้อยที่สุดโดยเพิ่มการแจ้งเตือนในการตั้งค่าผู้ดูแลระบบ WP ของปลั๊กอินหรือธีมเพื่อแจ้งให้ผู้ใช้แนะนำการอัปเดตการแปลบนที่เก็บ WordPress.org แทนการส่งการสนับสนุน ตั๋ว.
การปฏิบัติตามกระบวนการทีละขั้นตอนสำหรับแต่ละภาษานี้เป็นวิธีที่สมเหตุสมผลในการดำเนินการ ดังนั้นคุณจึงสามารถได้รับการแปลคุณภาพสูงและป้องกันไม่ให้คิวการสนับสนุนของคุณล้นด้วยตั๋วขนาดเล็กจำนวนมาก
การใช้ Google Translate API เพื่อแปลปลั๊กอิน/ธีมของคุณ
Google Cloud มี API เพื่อให้คุณสามารถใช้แปลภาษาเป็นบริการได้
ราคา Google Translate API
API เวอร์ชัน 3 ใช้งานได้ฟรีจนถึง 500,000 อักขระต่อเดือน และ 20 ดอลลาร์ต่อล้านอักขระหากคุณใช้เกินโควต้า คุณสามารถอ่านรายละเอียดราคาได้ที่นี่
ราคา Google Translate API (พฤษภาคม 2019)
A Quick Side Note – เป็นสากล
ปลั๊กอินทั้งหมดจะต้องเป็น สากล ก่อนที่จะถูก แปล จุดเริ่มต้นที่ดีคือคู่มือ WordPress.org I18n สำหรับนักพัฒนา WordPress ซึ่งจะอธิบายขั้นตอนต่างๆ เมื่อคุณสร้างไฟล์ .pot/.po แล้ว คุณสามารถดำเนินการตามกระบวนการเขียนสคริปต์ด้านล่างได้
ปลั๊กอินทั้งหมดจะต้องเป็นสากลก่อนที่จะแปล จุดเริ่มต้นที่ดีคือคู่มือ WordPress.org I18n สำหรับนักพัฒนา WordPress ที่อธิบายขั้นตอนต่างๆ ทวีต
มาเขียนสคริปต์กันเถอะ!
ก่อนที่เราจะสามารถเรียกใช้สคริปต์ได้ เราต้องสร้างโครงการใหม่ในคอนโซล Google Cloud หากคุณต้องการความช่วยเหลือเกี่ยวกับงานนี้ โปรดตรวจสอบคู่มือนี้หรือทำตามขั้นตอนเหล่านี้:
- ไปที่ https://console.developers.google.com และเข้าสู่ระบบ
- คลิก "ไม่มีองค์กร" หรือเลือกองค์กรที่คุณต้องการ (เราคิดว่าคุณไม่มี):
3. คลิก “โครงการใหม่”:
4. ป้อนชื่อโครงการแล้วคลิก "สร้าง":
5. ตอนนี้คุณควรถูกเปลี่ยนเส้นทางไปยังแดชบอร์ดคอนโซล คลิก “เปิดใช้งาน API และบริการ”:
6. ค้นหา "Cloud Translation API":
7. คลิก "เปิดใช้งาน":
ตอนนี้เรามีโปรเจ็กต์แล้ว เราต้องตั้งค่าบัญชีบริการเพื่ออนุมัติคำขอของเราไปยัง Google API คุณสามารถทำตามขั้นตอนที่ 1 และ 2 ในคู่มือนี้จากแพลตฟอร์ม Google Cloud หรือทำตามขั้นตอนเหล่านี้:
- ไปที่ส่วน "บัญชีบริการ" จากเมนูหลัก: "IAM & Admin":
2. คลิกที่ “สร้างบัญชีบริการ”:
3. ป้อนชื่อและคำอธิบายสำหรับบัญชีบริการแล้วคลิก "สร้าง":
4. คลิก “ดำเนินการต่อ” เพื่อข้ามการเลือกบทบาทเนื่องจากเราไม่ต้องการ:
5. ตอนนี้คลิก "สร้างคีย์" จากนั้นคลิก "สร้าง" ตรวจสอบให้แน่ใจว่าคุณได้เลือกรูปแบบ JSON:
6. หลังจากที่คุณสร้างคีย์ เบราว์เซอร์จะดาวน์โหลดโดยอัตโนมัติ จำโฟลเดอร์ที่คุณจะบันทึกไฟล์เพราะเราต้องการใช้ในภายหลัง
ตอนนี้ทุกอย่างพร้อมแล้ว แต่ก่อนที่จะเรียกใช้สคริปต์ ตรวจสอบให้แน่ใจว่าคุณได้ตั้งค่าตัวแปรสภาพแวดล้อม GOOGLE_APPLICATION_CREDENTIALS ตามที่อธิบายไว้ในคำแนะนำ:
ตัวอย่าง: Linux หรือ macOS
แทนที่ [PATH] ด้วยเส้นทางไฟล์ของไฟล์ JSON ที่มีรหัสบัญชีบริการของคุณ
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
ตัวอย่างเช่น:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
ตัวอย่าง: Windows:
แทนที่ [PATH] ด้วยเส้นทางไฟล์ของไฟล์ JSON ที่มีรหัสบัญชีบริการของคุณ และ [FILE_NAME] ด้วยชื่อไฟล์
ด้วย PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
ตัวอย่างเช่น:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"
ด้วยพรอมต์คำสั่ง:
set GOOGLE_APPLICATION_CREDENTIALS=[PATH]
เมื่อเราทำสิ่งที่น่าเบื่อเสร็จแล้ว เราก็เริ่มแปลได้เลย!
- โคลนที่เก็บจาก https://github.com/GreenTreeLabs/po-gtranslator
- เปิดบรรทัดคำสั่งของคุณและเรียกใช้คำสั่งต่อไปนี้:
- โคลน Git https://github.com/GreenTreeLabs/po-gtranslator.git
- หากคุณไม่ได้ติดตั้ง git คุณสามารถดาวน์โหลดได้ที่นี่
- ป้อนไดเร็กทอรี po-translator:
cd po-gtranslator
- ติดตั้งการพึ่งพา:
npm install
- ในกรณีที่คุณไม่มียูทิลิตี้ npm โปรดติดตั้ง Node.js จากที่นี่
- รันสคริปต์ด้วยพารามิเตอร์ที่จำเป็นทั้งหมด:
node po-gtranslator.js --project_id=final-tiles-gallery --po_source=it.po --po_dest=it_IT.po --mo=it.mo --lang=it
มาดูพารามิเตอร์แต่ละตัวกัน:
--project_id
: ID ของโครงการ Google ของคุณ คุณสามารถรับได้จาก Google Cloud Console
--po_source
: เส้นทางของไฟล์ PO ว่างที่คุณต้องการแปล
--po_dest
: เส้นทางของไฟล์ PO พร้อมคำแปล
--mo
: เส้นทางของไฟล์ MO
--lang
: รหัสของภาษาที่คุณต้องการแปลเป็น
โปรดทราบว่าไฟล์ PO ต้นทางจะไม่ถูกแปล และสามารถใช้เพื่อสร้างภาษาได้มากเท่าที่คุณต้องการ ไฟล์ PO ที่คุณต้องเพิ่มลงในปลั๊กอินหรือธีมคือไฟล์ที่คุณส่งเป็น –po_dest ซึ่งเป็นเอกลักษณ์สำหรับแต่ละภาษา
po-gtranslator.js ใช้งานได้จริง!
ขอบคุณสำหรับสคริปต์กับฉัน!
ประสบการณ์การเรียนรู้ที่สนุกสนานสำหรับฉันในการคิดกระบวนการนี้ และฉันหวังว่ามันจะช่วยคุณในความพยายามแปลของคุณ ติดต่อกับฉัน @GreenTreeLabs หรือแสดงความคิดเห็นด้านล่างหากมีคำถามหรือข้อเสนอแนะ