WPML GraphQL – WPGraphQL متعدد اللغات لـ Headless WordPress
أنشئ موقع Headless WordPress متعدد اللغات. يضيف WPML GraphQL الوعي باللغة إلى مخطط WPGraphQL. يمكن لكل استعلام التصفية حسب اللغة. يمكن لكل استعلام إرجاع ترجمات العقدة. تأتي القوائم متعددة اللغات من خلال المخطط. تُحل عناوين URI المترجمة بشكل صحيح. تم بناء WPML GraphQL بواسطة فريق WPML للعمل مع WPGraphQL، وهي الإضافة مفتوحة المصدر التي تستخدمها Next.js و Nuxt و Astro و Gatsby وأطر عمل الواجهة الأمامية الأخرى لقراءة محتوى WordPress. مضمّن مع Multilingual CMS و Agency.
الاستعلام عن المحتوى لكل لغة من الواجهة الأمامية
يكتسب كل استعلام WPGraphQL وسيطة language. يمكنك تصفية المقالات وأنواع المنشورات المخصصة ومصطلحات التصنيف والقوائم وعناصر القائمة والتعليقات حسب اللغة في حقل واحد – لا حاجة للتصفية بعد الاستعلام في الواجهة الأمامية، ولا مضاعفة لحجم الطلبات، ولا تخمين للغة.
query PostsES {
posts(where: { language: "es" }) {
nodes { slug uri title }
}
}
عند تصفية عقدة ذات مستوى أعلى حسب اللغة، تتبع العناصر المتصلة (الفئات والوسوم والتصنيفات المخصصة) نفس اللغة تلقائياً. تكون النتائج متسقة دون وسائط إضافية لكل حقل متداخل.
هل تريد كل شيء بغض النظر عن اللغة من أجل خريطة الموقع أو العدد الإجمالي؟ مرّر language: "all".
جلب كل ترجمة لعقدة في استعلام واحد
يُرجع الحقل translations في المقالات ومصطلحات التصنيف كل نسخة بلغة أخرى من العقدة: المعرّف النصي للرابط، وعنوان URI، ورمز اللغة، وأي حقول متداخلة تطلبها. استعلام واحد، ورحلة ذهاب وإياب واحدة، وكل نسخة لغوية من الصفحة.
هذه هي البيانات التي تحتاجها لمبدل اللغة المعروض بجوار محتوى الصفحة نفسه، دون جعل الواجهة الأمامية تتبع سلسلة من الاستعلامات المرتبطة.
القوائم متعددة اللغات والتصنيفات والتعليقات وبيانات اللغة
بالإضافة إلى المقالات، يوسّع WPML GraphQL نفس الوسيطة language ومعالجة الترجمة لتشمل:
- القوائم وعناصر القائمة.
menu(language: "fr")للتصفح لكل لغة. أُضيفت في WPML GraphQL 1.1.0. - مصطلحات التصنيف. تتبع الفئات والوسوم والتصنيفات المخصصة لغة مقالتها افتراضياً ويمكن الاستعلام عنها لكل لغة مباشرة.
- التعليقات. إرجاع التعليقات المرتبطة بالمقالات بلغة معينة.
- استعلامات
languagesوdefaultLanguage. إدراج كل لغة مثبتة على الموقع مع الرمز، والإعدادات المحلية، والاسم الأصلي، وعنوان URL لعلم البلد، وعنوان URL للصفحة الرئيسية. شكل البيانات الصحيح لمبدل لغة مخصص.
الاستعلام عن مقالة معينة بواسطة المعرف أو المعرّف النصي للرابط، بأي لغة
هناك شكلان للاستعلام يجلبان مقالة مترجمة واحدة بواسطة معرّفها الخاص باللغة:
query PostBySlug {
post(id: "hola-mundo", idType: SLUG) {
title slug uri
}
}
query PostById {
post(id: "2", idType: DATABASE_ID) {
title slug uri
}
}
يُرجع كلا الشكلين المقالة المترجمة بعنوانها المترجم، والمعرّف النصي للرابط، وعنوان URI – دون منطق «هل هذه ترجمة؟» منفصل في الواجهة الأمامية.
صيانة متوافقة مع الإصدار الحالي لـ WPGraphQL
تم اختبار WPML GraphQL 1.1.3 حتى WPGraphQL 2.0.0، وهو مسار الإصدار الرئيسي الذي يسير عليه مشروع WPGraphQL. يعمل الفريق المسؤول عن صيانة WPGraphQL معنا بحيث تستمر الطبقة متعددة اللغات في التحرك مع المخطط. عندما يُصدر WPGraphQL إصداراً جديداً، يتبعه WPML GraphQL مباشرة.
يعمل مع ACF عند إضافة ACFML و WPGraphQL for ACF
بالنسبة للمواقع التي تبني نماذج محتواها في Advanced Custom Fields وتعرض تلك الحقول من خلال WPGraphQL، يتكامل WPML GraphQL مع ACFML و WPGraphQL for ACF لإضافة وسيطة language إلى استعلامات صفحة خيارات ACF:
query Settings {
myOptionPage(language: "de") {
addressFieldGroup {
addressTitle
repeaterAddressDetails { addressDetails }
}
}
}
تتبع حقول ACF في المقالات وأنواع المنشورات المخصصة (CPTs) لغة المقالة المستضيفة تلقائياً.
WPML GraphQL مضمّن مع WPML
يأتي WPML GraphQL مع Multilingual CMS و WPML Agency. لا يوجد شراء منفصل، ولا رسوم لكل موقع. اشترِ WPML مرة واحدة وستحصل حزمة Headless متعددة اللغات الخاصة بك على طبقة اللغة الخاصة بها. إذا كان لديك WPML بالفعل، فعّل WPML GraphQL من صفحة تنزيلات WPML الخاصة بك.