عدم إمكانية إنشاء صفحات أب/ابن في نوع المنشور المخصص وردبرس
تُعتبر خاصية "أنواع المقالات المخصصة" (Custom Post Types) من الأدوات الهامة في ووردبريس، حيث تتيح للمستخدمين إنشاء منشورات متعددة الأنواع تتناسب مع احتياجات مواقعهم. ولكن قد يواجه بعض المستخدمين مشكلة في عدم تمكنهم من إنشاء صفحات رئيسية وفرعية باستخدام هذه الأنواع المخصصة. في هذا المقال، سنناقش كيفية حل هذه المشكلة، مما يسمح لك بإدارة هيكل موقعك بطريقة مرنة.
أسباب المشكلة في أنواع المقالات المخصصة
عندما يتم تسجيل نوع مخصص من المقالات بشكل غير صحيح في ووردبريس، قد لا تظهر خيارات الصفحات الرئيسية والفرعية كما هو متوقع. يمكن أن يتسبب تكرار التسجيل لنفس نوع المقالة بأعداد مختلفة من الإعدادات في حدوث تعارضات في قاعدة البيانات. من الضروري معرفة كيفية كتابة الكود بشكل صحيح لضمان عمل وظيفة هيكل الصفحات بشكل مثالي.
حل الخطأ من خلال دمج الدوال
لإصلاح هذه المشكلة، يجب عليك التأكد من أنك تقوم بتسجيل المقترحات الخاصة بك بشكل صحيح في دالة واحدة مدمجة. يبدو أن لديك دالتين تسجلان نفس نوع المقالة "1:White" بكلمات مختلفة. يجب دمجهما في دالة واحدة مع جميع الإعدادات السليمة. إليك كيفية ذلك:
function add_custom_post_type_4() {
$text_domain = 'thesilent_2024r0';
register_post_type( '1:White', array(
'can_export' => true,
'capability_type' => 'page',
'description' => __( '1:White', $text_domain ),
'exclude_from_search' => false,
'hierarchical' => true,
'has_archive' => true,
'label' => __( '1:White', $text_domain ),
'labels' => array(
'name' => _x( '1:White', 'Post Type General Name', $text_domain ),
'singular_name' => _x( '1:White', 'Post Type Singular Name', $text_domain ),
'attributes' => _x( '1:White', 'Page Attributes', $text_domain ),
'menu_name' => __( '1:White', $text_domain ),
'all_items' => __( 'All 1:White', $text_domain ),
'view_item' => __( 'View 1:White', $text_domain ),
'add_new_item' => __( 'Add New 1:White', $text_domain ),
'add_new' => __( 'Add New 1:White', $text_domain ),
'edit_item' => __( 'Edit 1:White', $text_domain ),
'update_item' => __( 'Update 1:White', $text_domain ),
'search_items' => __( 'Search 1:White', $text_domain ),
'not_found' => __( 'Not Found', $text_domain ),
'not_found_in_trash' => __( 'Not found in Trash', $text_domain ),
'parent' => __( '1:White', 'Parent', $text_domain ),
),
'menu_icon' => 'dashicons-book-alt',
'menu_position' => 1,
'public' => true,
'publicly_queryable' => true,
'query_var' => true,
'rewrite' => array(
'slug' => 'white',
'with_front' => true
),
'show_in_admin_bar' => true,
'show_in_rest' => true,
'show_in_menu' => true,
'show_in_nav_menus' => true,
'show_ui' => true,
'supports' => array(
'title',
'thumbnail',
'editor',
'excerpt',
'author',
'comments',
'post-formats',
'parent',
'page-attributes'
),
'taxonomies' => true,
));
}
add_action( 'init', 'add_custom_post_type_4', 0 );
تأكد من تحديث القواعد
بعد إجراء التعديلات اللازمة، من المهم أيضاً التأكد من تحديث قواعد الكتابة (Rewrite Rules) لموقع الووردبريس الخاص بك. يمكنك القيام بذلك من خلال الذهاب إلى إعدادات الووردبريس > الروابط الثابتة (Permalinks) ثم النقر على "حفظ التغييرات". هذا سيساعد في إعادة تهيئة الروابط وضمان عمل خاصية الاختيار بين الصفحات الرئيسية والفرعية بسلاسة.
تطبيق الكود في ووردبريس
يمكنك إضافة الكود المذكور أعلاه في ملف functions.php الخاص بالقالب الفرعي، أو يمكنك استخدامه داخل إضافة مخصصة. يعتبر هذا الحل الأمثل لمشكلة "عدم السماح بإنشاء صفحات فرعية" عند استخدام أنواع المقالات المخصصة في ووردبريس.
الختام
باستخدام الخطوات المذكورة أعلاه، يمكنك ضبط إعدادات أنواع المقالات المخصصة لتعمل كما هو متوقع، مما يسمح لك بإنشاء هيكل صفحات أكثر تنظيماً. إذا واجهتك أي مشكلات أو كان لديك استفسارات إضافية حول استخدام ووردبريس أو أنواع المقالات المخصصة، فلا تتردد في طرحها. نأمل أن يكون هذا المقال قد ساعدك في حلهمشاكل "عدم السماح بإنشاء صفحات رئيسية وفرعية" بحيث يساهم في تطوير موقعك بشكل فعّال.