مقدمة لتصفية Gettext

نشرت: 2023-02-12

يمكن أن يمثل العثور على مكون إضافي أو سمة لموقع WordPress الخاص بك والتي تلبي جميع متطلباتك تحديًا. قد يقترب الكثير منها ولكن لا تزال بحاجة إلى تعديلات أو تخصيصات. بالإضافة إلى ذلك ، بصفتك مطورًا ، من الضروري التأكد من أن الكود الخاص بك مرن بدرجة كافية لدعم المستخدمين من جميع أنحاء العالم.

لحسن الحظ ، هناك بعض ميزات نواة WordPress التي يمكن أن تساعدك على تكييف عناصر معينة من موقعك. يمكّنك هذا من تخصيص زر أو نص تسمية بدلاً من التخلي عن مكون إضافي مفيد ، أو حتى إعداد موقعك للترجمة.

في هذه المقالة ، سنوفر فهمًا أفضل لمرشح gettext ، بما في ذلك كيفية عمله مع عملية ترجمة موقعك. هناك الكثير لتغطيته ، لذلك دعونا نتعمق في الأمر!

جدول المحتويات
1. ما هو Gettext؟
2. Gettext و PHP للترجمة
2.1. الخطوة 1: استخراج السلاسل النصية كملفات POT
2.2. الخطوة 2: قم بإنشاء ملف Portable Object (PO)
2.3 الخطوة 3: التحويل إلى ملفات كائن الجهاز (MO)
3. متى يكون مرشح Gettext لـ WordPress مفيدًا؟
4. انشر رسالتك مع WP Engine

ما هو Gettext؟

يمكّنك مرشح gettext من تعديل عناصر النص على موقع WordPress الخاص بك. من الأفضل فهمها من خلال مثال.

لنفترض أن نموذج التعليق الخاص بك يحتوي على حقلين: "الاسم" و "البريد الإلكتروني". إذا كنت تفضل قراءة "الاسم الأول" و "عنوان البريد الإلكتروني" ، فيمكنك استخدام مرشح gettext لتعديلهما بدلاً من الاضطرار إلى استبدال كل مثيل لكل مصطلح يدويًا في ملفات السمات الخاصة بك.

لا يعمل مرشح gettext إلا إذا تم تجهيز موقعك للترجمة. لذلك ، قبل أن نتعمق في كيفية استخدامه لتخصيص النص ، يتعين علينا مناقشة كيفية تدويل الكود الخاص بك.

تتضمن بعض المصطلحات التي يجب فهمها قبل المتابعة ما يلي:

  • التدويل (i18n). هذا يعني أنه تم إعداد كود WordPress الخاص بك للترجمة إلى لغات أخرى.
  • التعريب (l10n). العملية التي يمكنك من خلالها أخذ برمجة i18n وترجمة تثبيت WordPress الخاص بك لاستخدامه بلغة أصلية.
  • مكتبة GNU gettext. جنو هو نظام تشغيل مجاني مفتوح المصدر. تتيح لك مكتبة gettext الخاصة بها التفاف النص في سلاسل من التعليمات البرمجية ، والتي يمكن استخراجها بعد ذلك للترجمة.
  • ملف POT: لتنفيذ استخراج السلاسل القابلة للترجمة التي تم إنشاؤها باستخدام وظائف gettext ، يتم إنشاء ملفات قالب الكائن المحمول (POT).
  • ملف PO: تستخدم أداة مثل Poedit ملف POT لإنشاء ملفات Portable Object (PO) التي تتضمن الترجمات المكتملة بالإضافة إلى السلاسل القابلة للترجمة.
  • ملف MO: يتم إنشاء ملف Machine Object (MO) من ملف PO. إنه موجود في المكون الإضافي أو دليل السمات ويتم تسليمه بواسطة الخادم الخاص بك إذا تم طلب إصدار مترجم من موقع الويب الخاص بك.

تلعب كل هذه العناصر أدوارًا في إعداد منتجات WordPress للترجمة ، كما سترى في الخطوات أدناه.

Gettext و PHP للترجمة

أدناه ، أوضحنا سير العمل لتدويل سمة أو مكون إضافي. قبل تجربة مثل هذه التغييرات ، يوصى بإنشاء سمة فرعية للعمل معها. سيحمي هذا موقعك من أي كوارث محتملة.

الخطوة 1: استخراج السلاسل النصية كملفات POT

أول شيء تريد القيام به هو التحقق مما إذا كان المظهر أو المكون الإضافي الخاص بك يتضمن بالفعل ملفات POT. إذا لم يكن الأمر كذلك ، فستحتاج إلى إنشائها تلقائيًا ، أو إنشائها يدويًا باستخدام Terminal ، أو استخدام تطبيق موصى به بواسطة WordPress والذي ذكرناه سابقًا باسم Poedit:

يوفر الإصدار الاحترافي ميزة WordPress السريعة لإنشاء الملفات التي تحتاجها. ومع ذلك ، لا يزال بإمكانك إنشاء ملف POT ببضع نقرات إضافية باستخدام التطبيق المجاني.

للبدء ، ستحتاج إلى تنزيل برنامج Poedit وتثبيته ، والذي سيعمل على سطح المكتب لديك. بمجرد القيام بذلك ، انتقل إلى ملف > جديد . سيُطلب منك تحديد لغة ترجمتك:

ستحتاج بعد ذلك إلى حفظ مشروعك الجديد قبل المتابعة. بعد ذلك ، سيكون لديك خيار تحديث ملف POT موجود أو استخراج من المصادر :

إذا لزم الأمر ، يمكنك أيضًا البدء بملف POT فارغ ، ثم تغيير السلاسل النصية في Poedit. بدلاً من ذلك ، يمكنك البحث في Glotpress عن البرنامج المساعد الحالي وملفات السمات لاستخدامها. ومع ذلك ، في هذا المثال ، لنفترض أنك ستحتاج إلى استخدام الخيار الآخر.

بمجرد النقر فوق استخراج من المصادر ، سيكون لديك ثلاث علامات تبويب للإعدادات لتكوينها:

سوف تحتاج إلى تعيين المسارات لمصادر السلاسل النصية الخاصة بك. يمكنك أيضًا استبعاد مسارات معينة. بعد ذلك ، سترغب في تكوين خصائص الترجمة الخاصة بك:

هذا هو المكان الذي ستقوم فيه بتسمية مشروعك وتخصيص إعدادات الجمع والعناصر الأخرى الخاصة باللغة. أخيرًا ، يمكنك استخدام علامة التبويب Sources Keywords لإكمال الإعداد لملف POT الخاص بك:

عند النقر فوق علامة الجمع ، ستتمكن من إضافة كلمات gettext لإكمال إعداد الترجمة. ستتمكن أيضًا من رؤية السلاسل النصية والبحث عنها من ملفات المصدر.

الخطوة 2: قم بإنشاء ملف Portable Object (PO)

بعد ذلك ، ستحتاج إلى تحويل ملف POT إلى ملف PO لكل لغة ترغب في إضافتها. إذا كنت لا تترجم قالبك أو المكون الإضافي الخاص بك وتخطط فقط لاستخدام مرشح gettext للبدائل الإنجليزية إلى الإنجليزية ، فقم بتعيين اللغتين (المصدر والترجمة) إلى الإنجليزية.

إذا انتقلت إلى Catalog > تحديث من ملف POT في Poedit ، يمكنك اختيار الملف الذي تريد ترجمته:

بعد ذلك ، سيخضع الملف لعملية استخراج يتم خلالها إحضار جميع السلاسل القابلة للترجمة إلى Poedit. يؤدي هذا إلى إنشاء ملف PO. سترغب في تسميته لمطابقة ملفاتك الأخرى لهذا المشروع.

بعد ذلك ، انقر فوق إنشاء ترجمة جديدة في أسفل قائمة السلاسل النصية لبدء إجراء التغييرات:

لتغيير النص من الإنجليزية إلى الإنجليزية ، ما عليك سوى النقر على السلسلة التي تريد تغييرها واستخدام نافذة الترجمة الموجودة أسفل نص المصدر لكتابة الكلمة المستبدلة:

أكمل هذه العملية لأي نص تريد تغييره في السمة أو المكون الإضافي. بعد ذلك ، ستنشئ آخر الملفات الثلاثة الضرورية.

الخطوة 3: التحويل إلى ملفات كائن الجهاز (MO)

حتى الآن ، كنت تتخذ خطوات لإنشاء تعليمات البرمجة المتعلقة بترجماتك. الآن ، ستحتاج إلى تحويل كل ملف PO بحيث يمكن قراءته بواسطة الخادم وتسليم النص المطلوب للزوار.

اعتمادًا على الطريقة التي تنتقل بها من خلال سير عمل Poedit ، قد يكون ملف MO قد تم إنشاؤه بالفعل في مجلد اللغات في السمة الخاصة بك. إذا لم يكن كذلك ، فانتقل إلى File > Compile to MO :

الآن يجب أن يكون لديك المكونات التي تحتاجها لتنفيذ الميزات التي أصبحت ممكنة بواسطة مرشح gettext في WordPress.

متى يكون مرشح Gettext لـ WordPress مفيدًا؟

على الرغم من أن العملية التي وصفناها أعلاه يمكن أن تساعدك في ترجمة موقعك إلى العديد من اللغات ، إلا أن هذا ليس الغرض من مرشح gettext. بمعنى آخر ، لن ترغب في استخدام هذا الخطاف لتحويل النص الإنجليزي إلى إسباني.

بدلاً من ذلك ، يعد هذا أكثر من وظيفة تصميم يمكنك استخدامها لتعديل النص الافتراضي المضاف إلى موقعك بواسطة مكون إضافي أو سمة ، مثل من خلال:

  • تخصيص التسمية
  • يتغير نص الزر
  • تعديلات العنوان

يمكن استخدام هذه العملية لتخصيص أي نص يمكن ترجمته في ملفات موقع الويب الخاص بك. لتقديم مثال آخر ، إذا كان المظهر الخاص بك يحتوي على أزرار معدة مسبقًا تقرأ "اشترِ الآن" ولكن موقعك يحتاج إليها لقراءة "اشتراك" ، gettext هو المرشح الذي يمكن أن يجعل هذا التغيير حقيقة واقعة.

من المهم ملاحظة أن استخدام gettext بشكل متكرر يمكن أن يكون له تأثير سلبي على أداء موقع الويب الخاص بك. هذا رمز إضافي يجب تشغيله في كل مرة يتم فيها تحميل موقعك ، لذا استخدمه باعتدال لتجنب انخفاض سرعة الصفحة.

انشر رسالتك مع WP Engine

قد يكون تحديد ما إذا كنت تريد استخدام المكونات الإضافية أم لا أو إنشاء تغييرات يدوية في التعليمات البرمجية على موقع الويب الخاص بك أمرًا صعبًا. هذا هو السبب في أن وجود أفضل موارد المطورين في متناول اليد هو المفتاح. مسلحًا بالدعم الاحترافي والخبير من WP Engine ، سيكون لديك ما تحتاجه لإنشاء موقع ويب مخصص للغاية.

تحقق من خطط استضافة WordPress المُدارة الخاصة بنا لمشروعك التالي. لقد قمنا بتغطية صيانة الخادم الخاص بك حتى تتمكن من الابتكار بسهولة!