يتيح لك WPML استخدام مسارات إنترنت فريدة للمحتوى المخصص بلغات مختلفة. هذا يشمل ترجمات الارتباط الثابت للمقال، وكذا اسم نوع المقال المخصص.
مسارات الأنواع المخصصة للمقال تشتمل على اسم نوع المقال واسم الصفحة. في المعتاد ستظهر الأنواع المخصصة للمقال باللغات المختلفة في هذا الشكل:
- /houses/my-green-house/
- /casas/mi-casa-verde/
الجزء الأول من المسار، بالخط العريض، هو نوع المقال. النوع الثاني هو اسم الصفحة.
لترجمة أسماء الصفحات، انقر على زر “تحرير” بجوار حقل الرابط الثابت في محرر المقال. وبما أن WPML يستخدم مقالاً مختلفًا لكل لغة، يمكن ضبط اسم كلٍ منها بشكل منفرد.
ترجمة أسماء الأنواع المخصصة للمقال
للسماح لـ WPML بترجمة أسماء النوع المخصص للمقال، ستحتاج إلى استخدام وحدة ترجمة النصوص (String Translation).
بيان الأنواع المخصصة للمقال في PHP
إذا كنت تقوم بتسجيل الأنواع المخصصة للمقال يدويًا، عبر PHP، فإن WPML سيقوم بالتقاط هذه الاستدعاءات وتسجيل الارتباط الثابت للترجمة.
بيان الأنواع المخصصة للمقال مع ملحق الأنواع (Types)
لتحديد أنواع المقال المخصصة بدون PHP، يمكنك استخدام ملحق الأنواع (Types) الخاص بنا. سيقوم ملحق الأنواع (Types) تلقائيًا بالإفصاح عن أنواع المقال المخصصة، كي يمكنك ترجمتهم في WPML.
اذهب إلى ملحق الأنواع (Types) وحرر النوع المخصص للمقال. إن لم يكن مُمكّنًا لترجمة الأسماء، سترى رابطًا لشاشة إعداد WPML:
تمكين ترجمة اسم نوع المقال المخصص في WPML
بعد ذلك، اذهب إلى WPML -> صفحة الإعدادات. سترى القسم الجديد المخصص لترجمة الارتباطات الثابتة.
قائمة التدقيق الخاصة بتمكين ترجمة اسم النوع المخصص للمقال هي:
1. جعل هذا النوع المخصص للمقال قابلاً للترجمة
2. تمكين ترجمة الارتباط الثابت للموقع الإلكتروني
3. التحديد لاستخدام الارتباطات الثابتة المختلفة بلغات مختلفة
والآن، أنت جاهز لترجمة أسماء أنواع المقال المخصصة. أدخل الترجمات الخاصة بهم، ثم انقر على حفظ، وسينبغي بعد أن تظهر في مسارات الإنترنت.
ترجمة أراشيف النوع المخصص للمقال
عند تسجيلك للأنواع المخصصة للمقال يدويًا، سيسمح لك WordPress بتحديد ارتباط ثابت لأرشيف بعينه باستخدام:
has_archive
بدءًا من الإصدار 3.2، يتيح WPML ضبط has_archive
كنص. مع ذلك، إذا تم ضبط قيمة النص كشيء آخر غير rewrite['slug'],
أو لم يتم تعيين الارتباط الثابت لاسم CPT، لن يصبح الارتباط الثابت للأرشيف قابلاً للترجمة.
الكود المستخدم كمثال 1:
في هذا الكود المستخدم كمثال، نقوم بتعيين 'has_archive' => true
. لنفترض أن الارتباط الثابت book تمت ترجمته إلى libro بالأسبانية، فإن روابط الأرشيف تكون كالتالي:
- الإنجليزية (اللغة الافتراضية): http://mydomain.tld/book/
- الأسبانية (اللغة الثانية): http://mydomain.tld/es/libro/
add_action( 'init', 'create_post_type' ); function create_post_type() { register_post_type( 'book', array( 'labels' => array( 'name' => __( 'Books', 'textdomain' ), 'singular_name' => __( 'Book', 'textdomain' ) ), 'public' => true, 'has_archive' => true, 'publicly_queryable' => true, 'exclude_from_search' => false, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array('slug' => 'book'), 'supports' => array('title','editor', 'custom-fields','thumbnail') ) ); }
الكود المستخدم كمثال 2:
في هذا الكود المستخدم كمثال، نقوم بتعيين نص معين للمعيار 'has_archive' => 'my-books'
. والآن، تكون روابط الأرشيف كالتالي:
- الإنجليزية (اللغة الافتراضية): http://mydomain.tld/my-books/
- الأسبانية (اللغة الثانية): http://mydomain.tld/es/my-books/
add_action( 'init', 'create_post_type' ); function create_post_type() { register_post_type( 'book', array( 'labels' => array( 'name' => __( 'Books', 'textdomain' ), 'singular_name' => __( 'Book', 'textdomain' ) ), 'public' => true, 'has_archive' => 'my-books', // Do not use the gettext functions for this parameter 'publicly_queryable' => true, 'exclude_from_search' => false, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array('slug' => 'book'), 'supports' => array('title','editor', 'custom-fields','thumbnail') ) ); }