كيفية إنشاء تصنيف مخصص

نشرت: 2016-09-07

هذه هي المقالة الثانية من سلسلة من 3 أجزاء حول موضوع أنواع المنشورات المخصصة (CPT). الموضوعات التي تمت مناقشتها في المادتين الأخريين هي:

  • أنواع المنشورات المخصصة وكيفية إنشائها
  • عرض أنواع المنشورات المخصصة - القوالب والاستعلام

في منشور المدونة هذا ، سننظر في كيفية إنشاء تصنيف مخصص وكيفية ربطه بنوع منشور مخصص.

ما هو التصنيف المخصص؟

لنبدأ فقط ، ما هو التصنيف؟ يعجبني تعريف WordPress الرسمي: التصنيف هو طريقة لتجميع الأشياء معًا.

يحتوي WordPress على 4 تصنيفات افتراضية: الفئة ، والعلامة ، وفئة الرابط ، وتنسيقات المشاركة. بالتأكيد الأكثر استخدامًا من بين الفئات الأربع هي الفئات والعلامات. يتيح لك تصنيف الفئات تجميع المشاركات معًا في فئات منطقية ، بحيث يمكنك تحديد نفسك. تصنيف العلامات متشابه للغاية ، ولكن يمكن استخدامه بحرية أكبر. تسمى مجموعة واحدة في التصنيف مصطلحًا. يحتوي كل تصنيف أيضًا على صفحة "الفهرس" الخاصة به ، حيث يتم عرض جميع المنشورات التي تحمل نفس المصطلح (تبدو عناوين URL لهذه الصفحات على النحو التالي: "التصنيف / المصطلح" ).

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

فقط لتحديث الذاكرة: في المقالة السابقة حول أنواع المنشورات المخصصة ، استخدمنا مثال CPT من الشهادات لموضوع Shaka الخاص بنا ، لذلك سنستمر في استخدام ذلك هنا أيضًا.

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

يمكنك إنشاء تصنيف مخصص لكل مجموعة منطقية يمكنك التفكير فيها.

كيف يمكنك إنشاء تصنيف مخصص؟

تمامًا كما هو الحال مع أنواع المنشورات المخصصة ، هناك طريقتان لتسجيل تصنيف مخصص. يمكنك إنشائه باستخدام مكون إضافي أو يمكنك كتابة القليل من كود PHP.

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

سنلقي نظرة هنا على كيفية إنشاء التصنيف المخصص وكيفية ربطه بنوع المنشور المخصص.

أنشئ تصنيفًا مخصصًا باستخدام مكون إضافي - الطريقة السهلة

سنستخدم المكون الإضافي Custom Post Type UI ، لتسجيل التصنيف المخصص ، تمامًا كما فعلنا مع CPT في المقالة السابقة:

  1. قم بتثبيت وتفعيل المكون الإضافي Custom Post Type UI من لوحة تحكم wp-admin ،
  2. بمجرد تنشيط المكون الإضافي ، سيكون عنصر قائمة مسؤول CPT UI متاحًا . انتقل إلى CPT UI -> Add / Edit التصنيف
  3. أدخل slug ، اسم الجمع والمفرد في التصنيف ، ثم يتعين عليك تحديد نوع المنشور لإرفاق هذا التصنيف المخصص الذي تم إنشاؤه حديثًا (الإعدادات الافتراضية الأخرى مناسبة). في حالتنا ، قمنا بتسمية التصنيف المخصص لدينا: testimonial_service وأرفقناه بنوع المنشور المخصص للشهادات ، والذي سجلناه في المقالة السابقة: إضافة التصنيف
  4. إذا نظرنا الآن إلى الشاشة لإنشاء نوع منشور مخصص جديد للشهادة ، فسترى مربع التعريف لخدمات الشهادات على الجانب الأيمن وأيضًا عنصر قائمة فرعية على اليسار: إضافة شهادة جديدة
  5. هذا كل شيء ، يمكننا الآن إضافة خدمات جديدة ستجمع الشهادات بناءً على الخدمات التي يشيرون إليها.

قم بإنشاء تصنيف مخصص يدويًا - يتضمن الترميز

نعم ، يقول العنوان أن الترميز متضمن ، لكن هذا ليس صحيحًا في الواقع

يمكنك استخدام منشئ كود WP لإنشاء كود التصنيف المخصص. ما عليك سوى النقر فوق علامات التبويب في الجزء العلوي وإدخال تفاصيل التصنيف المخصص الخاص بك. سيُخرج المولد رمز تسجيل تصنيف مخصص صالحًا:

 // Register Custom Taxonomy function custom_taxonomy_testimonial_service() { $labels = array( 'name' => _x( 'Testimonial Services', 'Taxonomy General Name', 'text_domain' ), 'singular_name' => _x( 'Testimonial Service', 'Taxonomy Singular Name', 'text_domain' ), 'menu_name' => __( 'Testimonial Services', 'text_domain' ), 'all_items' => __( 'All Items', 'text_domain' ), 'parent_item' => __( 'Parent Item', 'text_domain' ), 'parent_item_colon' => __( 'Parent Item:', 'text_domain' ), 'new_item_name' => __( 'New Item Name', 'text_domain' ), 'add_new_item' => __( 'Add New Item', 'text_domain' ), 'edit_item' => __( 'Edit Item', 'text_domain' ), 'update_item' => __( 'Update Item', 'text_domain' ), 'view_item' => __( 'View Item', 'text_domain' ), 'separate_items_with_commas' => __( 'Separate items with commas', 'text_domain' ), 'add_or_remove_items' => __( 'Add or remove items', 'text_domain' ), 'choose_from_most_used' => __( 'Choose from the most used', 'text_domain' ), 'popular_items' => __( 'Popular Items', 'text_domain' ), 'search_items' => __( 'Search Items', 'text_domain' ), 'not_found' => __( 'Not Found', 'text_domain' ), 'no_terms' => __( 'No items', 'text_domain' ), 'items_list' => __( 'Items list', 'text_domain' ), 'items_list_navigation' => __( 'Items list navigation', 'text_domain' ), ); $args = array( 'labels' => $labels, 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_admin_column' => true, 'show_in_nav_menus' => true, 'show_tagcloud' => true, ); register_taxonomy( 'testimonial_service', array( 'testimonials' ), $args ); } add_action( 'init', 'custom_taxonomy_testimonial_service', 0 );

يمكنك لصق هذا الرمز في مكون إضافي تم إنشاؤه حديثًا أو في ملف theme .php. لقد قمت بلصق الكود مباشرة في ملف function.php ، لأنه أكثر ملاءمة لهذا المثال. ظهر عنصر القائمة الفرعية لخدمات الشهادات ضمن قائمة لوحة تحكم المشرف في الشهادات ، كما يوجد مربع التعريف ، تمامًا كما هو الحال في لقطة الشاشة في إعداد البرنامج المساعد أعلاه.

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

  • نربط وظيفة custom_taxonomy_testimonial_service في إجراء WP init من أجل تسجيل التصنيف المخصص ،
  • أول كتلة من التعليمات البرمجية داخل الوظيفة عبارة عن مجموعة من الملصقات ، حيث يمكنك تغيير الكلمات التي سيتم استخدامها عند إنشاء / تحرير التصنيفات المخصصة. نصيحة: أوصي باستخدام وظائف التهرب من التدويل. لذا بدلاً من _x() و __() esc_html_x() و esc_html__() ،
  • الكتلة الثانية عبارة عن مجموعة من الوسائط / الإعدادات الخاصة بالتصنيف المخصص. يمكنك إلقاء نظرة على وثائق WP الرسمية ، لمعرفة الحجج التي يمكنك تعيينها ،
  • باستخدام register_taxonomy( 'testimonial_service', array( 'testimonials' ), $args ); call ، نسجل التصنيف المخصص testimonial_service الذي "يرفق" بنوع المنشور المخصص testimonials باستخدام وسيطات $args .

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