تكوين توافق WPML مع قوالب وإضافات WordPress – الإعدادات وملف wpml-config.xml المخصص
تعمل WPML دون إعدادات إضافية مع كل قوالب وإضافات WordPress الرئيسية والشائعة. ثبّت WPML على موقع يعمل بإضافات Elementor أو WooCommerce أو Yoast أو Gravity Forms أو ACF – وستعمل الترجمة ببساطة. لا تحتاج إلى تغيير أي من الإعدادات في هذه الصفحة.
هذه الصفحة مخصصة للبقية: القوالب والإضافات الأقل شيوعاً، والإصدارات الحديثة جداً التي نشرها مطوّرها قبل أن يواكبها توافق WPML، وعدد قليل من المساعدات العامة للمواقع التي تواجه أعراضاً محددة. لا يزور معظم العملاء هذه الصفحة أبداً. وعندما تفعل ذلك، فعادةً ما يكون ذلك لأن فريق دعم WPML قد وجّهك إلى خيار تبديل محدد أو إلى wpml-config.xml لتلصقه.
تغطي صفحتان فرعيتان ضمن الإعدادات موضوع التوافق، وتغطي هذه الصفحة كلتيهما. تحتوي صفحة إعدادات > التوافق على خيارات التبديل للأعراض الشائعة. أما صفحة إعدادات > تكوين XML مخصص فهي المكان الذي تكتب فيه wpml-config.xml الخاص بك – وهو موضح في النصف الثاني من هذه الصفحة. توجد واجهة المستخدم للافتراضيات الأكثر شيوعاً (تفضيلات الترجمة لكل نوع منشور، ولكل تصنيف، ولكل حقل) في صفحة إعدادات منفصلة مشروحة في ما الذي يُترجم – وما الذي لا يُترجم؛ ويستخدم معظم العملاء تلك الواجهة ولا يأتون إلى هنا إلا عندما لا تلبي احتياجاتهم.
خيارات التبديل للتوافق
افتح WPML > إعدادات > التوافق. تحتوي الصفحة على أربع بطاقات. تستهدف كل بطاقة فئة معينة من مشاكل التوافق.
خيارات التعريب – للقوالب والإضافات التي لا تُحمّل ترجماتها
عندما يتضمن قالب أو إضافة بالفعل ترجمات واجهة المستخدم الخاصة به (ملفات .mo في مجلد /languages/) ولكن هذه الترجمات لا تظهر على موقعك، فإن بطاقة خيارات التعريب تحتوي على ثلاثة خيارات تبديل تساعد WPML في العثور عليها وتطبيقها.
- تحميل ملف
.moالخاص بالقالب تلقائياً باستخدامload_textdomain. يجبر هذا الخيار WPML على استدعاءload_textdomain()لنطاق نص القالب. استخدمه عندما تكون ترجمات القالب موجودة على القرص ولكنها لا تظهر. - إدخال نطاق النص (textdomain). يتجاوز هذا الخيار نطاق النص المكتشف تلقائياً. تسجل بعض القوالب نطاق النص الخاص بها بطرق غير قياسية؛ ويتيح لك هذا الحقل تحديده صراحةً.
- استخدام نطاقات نص القالب أو الإضافة عندما لا تستخدم استدعاءات gettext سلسلة نصية حرفية. علامة توافق للقوالب/الإضافات التي تستخدم استدعاءات
__()مع وسائط متغيرة بدلاً من السلاسل النصية الحرفية. لا تستطيع WPML اكتشافها تلقائياً، ويساعدها خيار التبديل هذا على تطبيق الترجمات على أي حال.
إذا وجّهك فريق دعم WPML إلى هنا، فسيخبرونك بخيار التبديل ونطاق النص الذي يجب ضبطه.
جعل القوالب تعمل بلغات متعددة
ضبط المعرفات للوظائف متعددة اللغات. طبقة توافق للقوالب التي تبرمج افتراضات اللغة الواحدة بشكل ثابت (على سبيل المثال، قالب يخزن «معرف الصورة البارزة» مرة واحدة ويستخدم نفس الصورة عبر كل لغة).
لا تحتاج معظم القوالب الحديثة المتوافقة مع WPML إلى هذا. بينما تحتاجه أحياناً القوالب القديمة أو الأقل توافقاً مع WPML. قم بتشغيله إذا رأيت مراجع المحتوى (الصور، القوائم، العناصر البارزة) تتسرب عبر اللغات بشكل غير صحيح.
تصفية اللغة لعمليات AJAX
تخزين ملف تعريف ارتباط للغة لدعم تصفية اللغة لـ AJAX. تستخدم بعض الإضافات AJAX لجلب المحتوى: قوائم المنتجات المصفاة، وقوائم المقالات المقسمة عبر AJAX، ونتائج البحث أثناء الكتابة. بدون ملف تعريف ارتباط للغة، لا تعرف نقطة نهاية AJAX اللغة التي يجب أن تستجيب بها وتُرجع نتائج بلغة خاطئة.
قم بتشغيل ملف تعريف الارتباط إذا رأيت هذا العرض: يحصل الزوار في الصفحة الفرنسية على نتائج باللغة الإنجليزية من الأقسام المحملة عبر AJAX. إنه إصلاح عبر مربع اختيار واحد لفئة كاملة من الأخطاء.
صفحات تسجيل الدخول والتسجيل
السماح بترجمة صفحات تسجيل الدخول والتسجيل. لا تُعد شاشة /wp-login.php المدمجة في WordPress وشاشة التسجيل جزءاً من المحتوى العادي الذي تترجمه WPML. فهي توجد خارج سلسلة قوالب التصميم. يضيف خيار التبديل هذا هذه الصفحات إلى مجموعة صفحات WPML القابلة للترجمة.
إذا كان موقعك يعمل على خادم nginx، فإن خيار التبديل يتطلب أيضاً تعديلاً في تكوين الخادم. ترتبط الصفحة بدليل nginx الخاص بـ WPML مع كتلة التكوين الدقيقة.
نصوص القوالب والإضافات – الإعدادات هنا، والفاحص في مكان آخر
ينقسم العمل على نوعين من السلاسل النصية للقوالب/الإضافات عبر شاشتين:
- الإعدادات في هذه الصفحة. تتعامل مع التوافق للترجمات التي يتضمنها القالب/الإضافة بالفعل:
load_textdomain، وتجاوز نطاق النص، واستدعاءات gettext غير الحرفية. - الفاحص في شاشة خاصة به. عندما تحتاج إلى العثور على السلاسل النصية للقوالب والإضافات التي لم تُسجل للترجمة بعد، استخدم شاشة ترجمة نصوص المسؤول. يمكن الوصول إليها من علامة التبويب السلاسل في الترجمات ضمن قسم «ألا ترى السلاسل النصية التي تبحث عنها؟».
للاطلاع على سير العمل الكامل لفحص السلاسل النصية، راجع ترجمة السلاسل النصية.
ملف wpml-config.xml مخصص
توفر القوالب والإضافات المتوافقة مع WPML ملف wpml-config.xml يخبر WPML بالضبط عن الحقول، وأنواع المنشورات، والتصنيفات، والأكواد المختصرة، والمفاتيح الوصفية التي يجب أن تكون قابلة للترجمة. تقرأ WPML هذا الملف عند التفعيل. بالنسبة لكل القوالب والإضافات الرئيسية والشائعة، يعني هذا أن الترجمة تعمل بشكل صحيح وجاهزة للاستخدام فوراً. لا تحتاج إلى فعل أي شيء.
عندما لا يكون ملف wpml-config.xml المُرفق مع القالب أو الإضافة كافياً لموقعك، يمكنك كتابة ملفك الخاص. تطبقه WPML فوق ما يوفره القالب أو الإضافة.
متى تكتب ملف wpml-config.xml الخاص بك
ثلاثة سيناريوهات.
- حقل تحتاج إلى ترجمته غير موجود في ملف wpml-config.xml المُرفق. لم يعلن مطوّر القالب أو الإضافة أن حقلاً مخصصاً قابل للترجمة، ولكنك تحتاج إلى ترجمته في موقعك.
- حقل له إعداد افتراضي خاطئ. يحدد ملف wpml-config.xml المُرفق شيئاً ما على أنه نسخ وأنت تريده ترجمة، أو العكس.
- أنت تبني قالباً أو إضافة مخصصة وتريد الإعلان عن سلوك الترجمة الخاص بها من صفحة إعدادات WPML بدلاً من إرفاق ملف wpml-config.xml مع الكود الخاص بك.
في كل حالة، قد يوجّهك فريق دعم WPML إلى هنا مع كود wpml-config.xml الدقيق لتلصقه. في الغالب يكون هذا الإجراء موجهاً من فريق الدعم، وأحياناً يكون موجهاً من المطوّر.
لماذا يتم تعديل wpml-config.xml في لوحة تحكم WPML بدلاً من ملف القالب
يمكنك تعديل ملف wpml-config.xml الخاص بالقالب أو الإضافة مباشرة. ولكن هذا التغيير سيضيع في المرة القادمة التي يُحدَّث فيها القالب أو الإضافة. يضع المحرر المدمج في لوحة تحكم WPML في WPML > إعدادات > تكوين XML مخصص ملف wpml-config.xml الخاص بك فوق ما يوفره القالب أو الإضافة، ويظل موجوداً بعد التحديثات. إنه المكان المناسب للتعديلات الخاصة بالموقع.
شكل ملف wpml-config.xml
الصفحة عبارة عن محرر XML. الصق كتلة <wpml-config>...</wpml-config>، واحفظ، وستقوم WPML بتطبيق ملف wpml-config.xml الخاص بك.
ملف wpml-config.xml بسيط يعلن أن الكود المختصر قابل للترجمة:
<wpml-config>
<shortcodes>
<shortcode>
<tag>add_to_cart_link</tag>
</shortcode>
</shortcodes>
</wpml-config>
أنواع العناصر التي ستعلن عنها عادةً:
<custom-fields>. تحديد حقل مخصص على أنهtranslateأوcopyأوcopy-onceأوnothing.<custom-types>. الإعلان عن نوع منشور مخصص كقابل للترجمة.<taxonomies>. الإعلان عن تصنيف مخصص كقابل للترجمة.<shortcodes>. إدراج الأكواد المختصرة التي يجب على WPML ترجمة محتواها.<custom-term-fields>. للبيانات الوصفية للمصطلح.
لكل عنصر سماته الخاصة (على سبيل المثال، action="translate" في حقل مخصص). للحصول على المرجع الكامل لملف wpml-config.xml (كل عنصر، وكل سمة، وكل قيمة مسموح بها)، راجع معلومات مطوّر WPML.
سير عمل عملي
إذا أعطاك فريق دعم WPML كتلة wpml-config.xml لتلصقها:
- افتح WPML > إعدادات > تكوين XML مخصص.
- الصق كود XML الخاص بهم داخل كتلة
<wpml-config>الموجودة (أو استبدل المحتويات إذا أعطوك الكتلة بالكامل). - احفظ.
- تطبق WPML ملف wpml-config.xml الخاص بك على الفور. إذا كان يعلن عن نوع منشور أو حقل جديد قابل للترجمة، فسيظهر الإدخال في إعدادات > ترجمة أنواع المنشورات / ترجمة الحقول المخصصة فوراً.
إذا كنت تبني قالباً أو إضافة مخصصة وتريد إرفاق تكوين WPML الخاص بها مع الكود، فستضع نفس كتلة <wpml-config> في ملف wpml-config.xml في المسار الجذري لقالبك أو إضافتك بدلاً من ذلك. تقرأه WPML عند التفعيل. المحرر المدمج في لوحة التحكم مخصص للتعديلات الخاصة بالموقع؛ أما الملف المُرفق فهو للافتراضيات الخاصة بالقالب/الإضافة.
بقلم Amir · آخر تحديث في 2 يوليو 2026
بقلم Amir · آخر تحديث 2 يوليو 2026