كيفية ترجمة مكونات WordPress الإضافية والسمات تلقائيًا باستخدام الترجمة من Google
نشرت: 2019-07-31لقد سمعنا جميعًا أن WordPress يدعم الآن أكثر من 33٪ من مواقع الويب ، ولكن كيف يمكنك التأكد من إمكانية استخدام المكون الإضافي أو القالب الخاص بك على أوسع نطاق ممكن داخل النظام البيئي؟
والمثير للدهشة أن أقل من نصف مواقع WordPress قد تم ضبط الإعدادات المحلية الخاصة بها على اللغة الإنجليزية! إذا لم تكن قد أعددت الترجمات بالفعل ، فهذا يعني أن أكثر من 50٪ من عملائك المحتملين لا يمكنهم على الأرجح العمل مع منتجك باللغة التي يفهمونها بشكل أفضل.
تتمثل إحدى أفضل الطرق لفتح منتجك أمام العالم في إنشاء ترجمات عالية الجودة لجميع النصوص التي تواجه المستخدم ، ولكن المشكلة تكمن في أن الترجمة تستغرق وقتًا طويلاً (كلما زاد عدد النصوص المتوفرة في منتجك ، زادت السلاسل لترجمة). تتطلب الترجمة أيضًا إتقان لغات مختلفة ، ومعرفة كيفية إدارة ملفات MO و PO ، وبشكل عام - بذل الكثير من الجهد.
اسمي دييغو إمبرياني ، وأنا مطور للمكونات الإضافية منذ عام 2011 ، كنت أبيع المكونات الإضافية من خلال شركتي GreenTreeLabs ومنتجاتي نشطة حاليًا على حوالي 70000 موقع على مستوى العالم.
لحسن الحظ ، وجدت طريقة للمساعدة في التخفيف من عملية الترجمة بأكملها وجعل ترجمة المكونات الإضافية والقوالب أسهل كثيرًا.
مقدمة
أردت مؤخرًا إضافة ترجمة إيطالية إلى أحد المكونات الإضافية الخاصة بي: Final Tiles Gallery for WordPress ، لذلك فتحت ملف PO الخاص بالمكون الإضافي ، والذي يحتوي على جميع السلاسل القابلة للترجمة ، وبدأت في ترجمة المكون الإضافي سطراً بسطر.
مقتطف من ملف PO الإيطالي الخاص بـ Final Tiles Gallery
يحتوي ملف PO الخاص بـ Final Tiles Gallery على حوالي 350 إدخالاً وتتطلب ترجمتها جميعًا حوالي ساعتين - وبصراحة - لا أجد هذه الوظيفة جذابة للغاية. أثناء بحثي في الترجمات ، تساءلت عما إذا كانت هناك طريقة لترجمة ملف PO الخاص بي تلقائيًا ...
قررت أن أجرب قليلاً مع Google Translate API وتمكنت من برمجة نص برمجي لإنجاز هذه المهمة بالضبط! أدناه ، سأوجهك خطوة بخطوة ، وأظهر لك كيف يمكنك استخدام البرنامج النصي الذي قمت بإنشائه لترجمة مكونات WordPress الإضافية أو السمات تلقائيًا.
WordPress واللغات
يجب أن أعترف أنني لم أشعر أبدًا بالقلق الشديد بشأن ترجمة المكونات الإضافية الخاصة بي. أنا إيطالي ، لكنني دائمًا ما كنت أستخدم البرامج وأنظمة التشغيل باللغة الإنجليزية. من الغريب استخدام أي نوع من واجهة المستخدم غير الإنجليزية. ربما هذا أنا فقط
يستخدم WordPress ملايين الأشخاص من أي خلفية ولغة وثقافة - من جميع أنحاء العالم. لا يمكننا ببساطة تجاهل ترجمة المكونات الإضافية والسمات الخاصة بنا.
يستخدم WordPress ملايين الأشخاص من أي خلفية ولغة وثقافة - من أي مكان في العالم. لا يمكننا ببساطة تجاهل ترجمة المكونات الإضافية والسمات الخاصة بنا
أبيع الإضافات الخاصة بي باستخدام Freemius ، الذي يحتوي على لوحة تحكم أنيقة مع تحليلات وإحصائيات مفيدة للغاية. قبل أيام قليلة ، ألقيت نظرة على جدول "أفضل 10 لغات" الذي تجده في لوحة تحكم المطورين ، وعلى الرغم من أنني أعلم أن العديد من المواقع التي تم تثبيت Final Tiles Gallery ليست باللغة الإنجليزية ، فقد فوجئت جدًا اكتشف أنه في عينة من حوالي 25000 عملية تثبيت ، فإن أقل من 50٪ من مواقع الويب باللغة الإنجليزية! إليك نظرة عامة:
كما ترى ، تشكل الفرنسية والألمانية والروسية نسبة كبيرة من المستخدمين بحوالي 20٪ في المجموع.
فوائد ترجمة البرنامج المساعد أو الموضوع
بالنسبة إلى مكون WordPress الإضافي أو الأنشطة التجارية ، تعد ترجمة منتجاتنا أيضًا فرصة تسويقية لعدة أسباب:
جمهور أكبر
لا يرغب جميع مستخدمي WordPress في تثبيت مكون إضافي لا يحتوي على ترجمة بلغتهم. قد يكون هذا لعدة أسباب ، ولكن بشكل رئيسي لأنهم ربما لا يفهمون اللغة الإنجليزية.
في حالات أخرى ، قد يفهم المستخدمون اللغة الإنجليزية ، لكنهم يفضلون ببساطة لغتهم الخاصة. لذلك ، نظرًا للاختيار بين مكونين إضافيين متشابهين ، سيختار هؤلاء العملاء المكون الإضافي بلغتهم ، حتى لو كان المكون الإضافي الآخر أفضل قليلاً.
يمكن أن يكون أيضًا مرتبطًا لأسباب ثقافية. كمثال ، لأسباب تاريخية ، لا سيما الجيل الأكبر من الفرنسيين الذين لا يحبون اللغة الإنجليزية. إذا بحثت في جوجل عن عبارة "لماذا تكره اللغة الفرنسية باللغة الإنجليزية" ، فستجد العشرات من المقالات حول هذا الموضوع. علاوة على ذلك ، يتحدث 40٪ فقط من الفرنسيين هذه اللغة بالفعل. لذلك إذا لم تتم ترجمة منتجك إلى اللغة الفرنسية ، فستفقد على الفور 60٪ من حصة سوق WordPress الفرنسية. وإذا كان هناك بديل فرنسي لمنتجك ، فمن المحتمل أن تخسره جميعًا ، أو على الأقل الغالبية العظمى منه. تحليل مماثل وثيق الصلة بالعديد من البلدان الآسيوية مثل اليابان التي لم تصبح بعد "أمركة".
WordPress.org SEO
كتب Vova Feldman ، الرئيس التنفيذي لشركة Freemius ، قليلاً عن فوائد الترجمة لتحسين محركات البحث على مستودع WordPress.org ، لكن لا يمكن التأكيد عليها بشكل كافٍ. الحقيقة هي أن خوارزمية البحث في الريبو حساسة للغاية لاستخدام لغات مختلفة في الملف التمهيدي الخاص بك.
يمكن أن يؤدي تركيز جهود الترجمة ليس فقط على سلاسل منتجك ولكن أيضًا على ملف readme.txt إلى مضاعفة وصولك التسويقي إلى الريبو. بينما يبحث معظم المستخدمين باللغة الإنجليزية ، فمن الواضح استنادًا إلى الإحصائيات المحلية من WordPress.org المذكورة أعلاه أن هناك العديد من المستخدمين الذين لا يبحثون باللغة الإنجليزية ، وبالتالي لديهم وصول محدود فقط إلى العديد من المكونات الإضافية والسمات المتاحة لهؤلاء الذين يفهمون اللغة الإنجليزية.
تعطي الخوارزمية نتائج مختلفة بناءً على الإعدادات المحلية لتثبيت WordPress معين - تتغلب ترجمة منتجك على هذا العائق أمام الوصول إلى المستخدمين الذين لن تتمكن عادةً من الوصول إليهم.
صاغها فوفا جيدًا عندما قال ، "خلاصة القول - أصبحت الترجمات الآن أكثر أهمية من أي وقت مضى!" - وما زال هذا صحيحًا بعد مرور أكثر من عام.
سمعة
ترجمة المكوِّن الإضافي أو السمة الخاصة بك لها بعض الآثار النفسية الإيجابية على عميلك. يمكن اعتبار المكون الإضافي أو القالب الذي يقدم ترجمات بلغة عملائك منتجًا عالي الجودة. هذا يعني أن المطور قد استثمر وقته في أكثر من مجرد مسائل تقنية. سيتعرف العملاء على هذه القيمة ونأمل بالتالي أن يروا جودة منتجك بطريقة مختلفة.
يمكن اعتبار المكون الإضافي أو القالب الذي يقدم ترجمة بلغتك الخاصة منتجًا عالي الجودة. هذا يعني أن المطور قد حرص على قضاء بعض الوقت في أكثر من مجرد مشكلات فنية
المساهمون
يمكن أن تؤدي إضافة الترجمات إلى المكون الإضافي أو السمة الخاصة بك إلى إنشاء تأثير إضافي للمترجمين المتطوعين على مستودع 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 Admin الخاصة بالقالب لإبلاغ المستخدمين باقتراح تحديثات الترجمة على مستودع WordPress.org بدلاً من تقديم دعم تذكرة.
يُعد اتباع هذه العملية خطوة بخطوة لكل لغة طريقة منطقية للمضي قدمًا حتى تتمكن من تحقيق ترجمات عالية الجودة ومنع اكتظاظ قائمة انتظار الدعم بأطنان من التذاكر الصغيرة.
استخدام Google Translate API لترجمة المكون الإضافي / الموضوع الخاص بك
يوفر Google Cloud واجهة برمجة تطبيقات بحيث يمكنك استخدام الترجمة كخدمة.
تسعير Google Translate API
الإصدار 3 من API مجاني حتى 500000 حرف شهريًا ، و 20 دولارًا لكل مليون حرف إذا تجاوزت الحصة. يمكنك قراءة تفاصيل التسعير هنا.
أسعار Google Translate API (مايو 2019)
ملاحظة جانبية سريعة - دولية
يجب تدويل جميع المكونات الإضافية قبل أن يتم ترجمتها . مكان رائع للبدء هو دليل WordPress.org I18n لمطوري WordPress الذي يشرح الخطوات. بمجرد إنشاء ملفات .pot / .po ، يمكنك متابعة عملية البرمجة النصية أدناه.
يجب تدويل جميع المكونات الإضافية قبل أن يتم ترجمتها. مكان رائع للبدء هو دليل WordPress.org I18n لمطوري WordPress الذي يشرح الخطوات
دعونا نكتب!
قبل أن نتمكن من تشغيل البرنامج النصي ، نحتاج إلى إنشاء مشروع جديد في Google Cloud Console. إذا كنت بحاجة إلى مساعدة في هذه المهمة ، فراجع هذا الدليل أو اتبع الخطوات التالية:
- انتقل إلى https://console.developers.google.com وقم بتسجيل الدخول.
- انقر فوق "لا توجد مؤسسة" أو حدد مؤسستك المفضلة (نفترض أنه ليس لديك مؤسسة):
3. انقر فوق "مشروع جديد":
4. أدخل اسم المشروع وانقر على "إنشاء":
5. الآن يجب إعادة توجيهك إلى لوحة أجهزة القياس. انقر فوق "تمكين واجهات برمجة التطبيقات والخدمات":
6. ابحث عن "Cloud Translation API":
7. انقر فوق "تمكين":
الآن بعد أن أصبح لدينا مشروع ، نحتاج إلى إنشاء حساب خدمة لتفويض طلباتنا إلى Google APIs. يمكنك اتباع الخطوتين 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] باسم الملف.
مع بوويرشيل:
$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- مترجم:
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
: معرف مشروع Google الخاص بك ، يمكنك الحصول عليه من Google Cloud Console
--po_source
: مسار ملف PO الفارغ الذي تريد ترجمته
--po_dest
: مسار ملف PO مع الترجمات
--mo
: مسار ملف MO
--lang
: رمز اللغة التي تريد الترجمة إليها
لاحظ أنه سيتم الاحتفاظ بملف PO المصدر بدون ترجمة ويمكن استخدامه لإنشاء العديد من اللغات التي تحتاجها. ملف PO الذي تريد إضافته إلى المكون الإضافي أو السمة هو الملف الذي تقوم بتمريره كـ –po_dest ، وهو فريد لكل لغة.
po-gtranslator.js في العمل!
شكرا للبرمجة معي!
لقد كانت تجربة تعليمية ممتعة بالنسبة لي لمعرفة هذه العملية ، وآمل أن تساعدك في مساعيك في الترجمة. تواصل معي علىGreenTreeLabs أو قم بالتعليق أدناه بخصوص أي أسئلة أو ملاحظات.