كيفية إضافة قائمة فرعية إلى قائمة نوع المنشور المخصص في WordPress

نشرت: 2020-01-23

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

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

أنت بحاجة إلى سبيكة نوع المنشور المخصص كأحد معلمات وظيفة add_submenu_page () لتتمكن من عرض القائمة الفرعية ضمن قائمة نوع المنشور المخصص. لذلك دعونا نبدأ بمراجعة سريعة حول كيفية تسجيل نوع منشور مخصص في قالب WordPress.

تسجيل نوع منشور مخصص

على الرغم من أنني شرحت جميع التفاصيل حول كيفية إضافة نوع منشور مخصص إلى WordPress في هذا المنشور ؛ سأشارك بسرعة الرمز الذي تحتاجه لإضافة نوع منشور مخصص في WordPress. الكود الذي يسجل نوع المنشور المخصص هو كما يلي:

 / **

  * نوع المنشور المخصص - register_post_type ()
  * @ description- مثال على نوع المنشور المخصص لبرنامج Njengah التعليمي
  * @ link -https: //gist.github.com/Njengah/839466b773085ac2430772e081357cee
  *
  * /

       add_action ('init'، "njengah_tutorial_cpt")؛

       الوظيفة njengah_tutorial_cpt () {
        
              تسميات $ = مجموعة (
                           'name' => _x ('دروس'، 'اسم عام لنوع المنشور')،
                           'singular_name' => _x ('البرنامج التعليمي'، 'اسم المفرد لنوع المنشور') ،
                           'menu_name' => _x ('البرامج التعليمية' ، 'قائمة المسؤول') ،
                           'name_admin_bar' => _x ('البرنامج التعليمي'، 'إضافة جديد في شريط الإدارة') ،
                           'add_new' => _x ('إضافة جديد'، ')،
                           'add_new_item' => __ ('إضافة برنامج تعليمي جديد') ،
                           'edit_item' => __ ('تحرير البرنامج التعليمي')،
                           'new_item' => __ ('برنامج تعليمي جديد') ،
                           'all_items' => __ ('كل البرنامج التعليمي') ،
                           'view_item' => __ ('عرض البرنامج التعليمي')،
                           'search_items' => __ ('بحث في البرامج التعليمية') ،
                           'not_found' => __ ("لم يتم العثور على برامج تعليمية") ،
                           'not_found_in_trash' => __ ("لم يتم العثور على برامج تعليمية في المهملات") ،
                           'parent_item_colon' => __ ('دروس الوالدين:') ،                     

              ) ؛

                     $ args = مجموعة (
                           "هرمي" => صحيح ،    
                           "labels" => تسميات $ ،
                           'public' => صحيح ،
                           'public_queryable' => صحيح ، 
                           "الوصف" => __ ("الوصف") ،
                           'show_ui' => صحيح ،
                           'show_in_menu' => صحيح ،
                           'show_in_nav_menus' => صحيح ،                
                           'query_var' => صحيح ،
                           "إعادة الكتابة" => صحيح ،
                           'query_var' => صحيح ،
                           'إعادة الكتابة' => مجموعة ('slug' => 'تعليمي') ،
                           "النوع_القدرة" => "الصفحة" ،
                           'has_archive' => صحيح ،
                           "menu_position" => 22 ،
                           "show_in_rest" => صحيح ،
                           'يدعم' => مجموعة ('العنوان' ، 'محرر' ، 'المؤلف' ، 'الصورة المصغرة' ، 'المراجعات' ، 'سمات الصفحة' ، 'الحقول المخصصة')

                     ) ؛

                     register_post_type ('تعليمي'، $ args) ؛   

       }

يجب عليك إضافة هذا الرمز إلى ملف jobs.php الخاص بموضوع الطفل ويجب أن يظهر نوع المنشور المخصص في لوحة المعلومات كما هو موضح في الصورة أدناه:

WordPress إضافة قائمة فرعية إلى قائمة نوع المنشور المخصص

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

أضف قائمة فرعية إلى قائمة نوع المنشور المخصص

نريد الآن التركيز على كيفية إضافة صفحة القائمة الفرعية ضمن قائمة نوع المنشور المخصص.

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

  1. قم بإنشاء خطاف إجراء لتسجيل القائمة الفرعية بوظائف رد الاتصال ذات الصلة . في هذه الحالة ، هناك وظيفتان يجب إنشاؤهما.
  2. استبدل المعلمة الأولى من add_submenu_page () بمثال سبيكة تحرير نوع المنشور المحدد php؟ post_type = 'name-of-your-post-type-slug'
  3. أضف الكود في php وستكون قد نجحت في إضافة القائمة الفرعية إلى نوع المنشور المخصص.

إضافة دالة صفحة قائمة فرعية

تُستخدم هذه الوظيفة add_submenu_page لإضافة قائمة فرعية في جميع صفحات قائمة المسؤول ويمكنك استخدام وظيفة remove_submenu_page لإزالة القائمة الفرعية من مسؤول WordPress .

تأخذ الوظيفة add_submenu_page () افتراضيًا 7 معلمات ويمكن التعبير عن الكود العام على النحو التالي:

 add_submenu_page (

             سلسلة $ parent_slug ،

             سلسلة $ page_title،

             سلسلة $ menu_title ،

             سلسلة $ القدرة ،

             سلسلة $ menu_slug ،

             دالة $ قابلة للاستدعاء = '' ،

             int $ position = خالية

 )

يمكن وصف معلمات وظيفة صفحة إضافة القائمة الفرعية على النحو التالي:

معامل وصف
$ parent_slug هذا هو اسم slug لمثال القائمة الأصلية ، في هذه الحالة ، سيكون edit.php؟ post_type = 'tutorials'
page_title $ النص الذي سيتم عرضه في علامات العنوان مثال على "مثال على الصفحة الفرعية للدروس التعليمية"
menu_title $ النص الذي سيتم عرضه في القائمة الفرعية أننا نقوم بإنشاء مثال "البرامج التعليمية"
القدرة $ قدرة دور ووردبريس للمستخدمين الذين يمكنهم الوصول إلى مثال القائمة "المسؤولين"
menu_slug $ هذا هو الجزء الثابت للصفحة التي سننشئ فيها مثالاً "tutorials_subpage_example"
وظيفة $ وظيفة رد الاتصال التي ستعرض المعلومات التي نريدها في الصفحة الفرعية التي نقوم بإنشائها. مثال على العنوان "البرامج التعليمية مثال على الصفحة الفرعية"
موقف $ هذا هو موضع عنصر القائمة بالنسبة إلى القوائم الفرعية الأخرى ؛ يمكنك استخدام هذا الرقم لدفع القائمة لأعلى ولأسفل لتناسب تفضيلاتك.

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

WordPress إضافة قائمة فرعية إلى قائمة نوع المنشور المخصص

إضافة سبيكة نوع المنشور المخصص إلى معلمة سبيكة الأصل

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

 / **
  * إضافة نوع المنشور المخصص صفحة فرعية إلى قائمة المشاركة المخصصة
  * @ description- Njengah تعليمي مخصص لنوع المنشور مثال على القائمة الفرعية
  * @ link - https://gist.github.com/Njengah/0764f2c88742c19b67a212c914c9f25f
  *
  * /

// صنارة صيد   

add_action ('admin_menu'، 'add_tutorial_cpt_submenu_example') ؛

// admin_menu وظيفة رد الاتصال

الوظيفة add_tutorial_cpt_submenu_example () {

     add_submenu_page (
                     "edit.php؟ post_type = tutorial"، // $ parent_slug
                     "مثال على الصفحة التعليمية الفرعية" ، // $ page_title
                     "إعدادات البرنامج التعليمي" ، // $ menu_title
                     "إدارة_خيارات" ، // $ قدرة
                     "tutorial_subpage_example" ، // $ menu_slug
                     'tutorial_subpage_example_render_page' // $ function
     ) ؛

}

// add_submenu_page وظيفة رد الاتصال

الوظيفة tutorial_subpage_example_render_page () {

     صدى '<h2> مثال على الصفحة الفرعية للبرنامج التعليمي </ h2>'؛

}

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

WordPress إضافة قائمة فرعية إلى قائمة نوع المنشور المخصص

استنتاج

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