यदि आप कस्टम पोस्ट प्रकार को दृश्यपटल पर पूरी तरह से अक्षम करना चाहते हैं, लेकिन संग्रह पृष्ठ प्रदर्शित करने में सक्षम हैं तो चीजें थोड़ी जटिल हो सकती हैं।
एकल या संग्रह दृश्य को प्रदर्शित करने के publicly_queryable
लिए सेट करना false
या रोकना संभव है। केवल एकल दृश्य पुनर्लेखन नियम बनाने से रोकने के लिए फ़ंक्शन तर्कों में कोई ध्वज नहीं है।rewrite
false
register_post_type
https://github.com/WordPress/WordPress/blob/5.2.3/wp-includes/class-wp-post-type.php#L540
हालाँकि आप अपने पोस्ट प्रकार को पंजीकृत करने के बाद फिर से लिखना टैग हटा सकते हैं और यह संग्रह दृश्य को फिर से लिखने के नियमों को अछूता छोड़ देगा लेकिन केवल एकल दृश्य पुनर्लेखन नियम को हटा देगा।
/**
* Register event post type
*/
function wpse_128636_register_event_post_type() {
$labels = array(
'name' => __( 'Events' ),
'singular_name' => __( 'Event' ),
'add_new' => __( 'Add new' ),
'add_new_item' => __( 'Add new' ),
'edit_item' => __( 'Edit' ),
'new_item' => __( 'New' ),
'view_item' => __( 'View' ),
'search_items' => __( 'Search' ),
'not_found' => __( 'Not found' ),
'not_found_in_trash' => __( 'Not found Events in trash' ),
'parent_item_colon' => __( 'Parent' ),
'menu_name' => __( 'Events' ),
);
$args = array(
'labels' => $labels,
'hierarchical' => false,
'supports' => array( 'title', 'page-attributes' ),
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'show_in_nav_menus' => true,
'publicly_queryable' => true,
'exclude_from_search' => true,
'has_archive' => true,
'rewrite' => array('slug' => 'event'),
'capability_type' => 'post',
);
register_post_type( 'event', $args );
remove_rewrite_tag( '%event%' ); // This line will remove event rewrite rules for single view
}
add_action( 'init', 'wpse_128636_register_event_post_type' );
एक और बोनस यह है कि अब से आप इवेंट पोस्ट प्रकार पर्मलिंक संरचना ( event/simple-page
) का उपयोग करके सरल वर्डप्रेस पेज बना सकते हैं जो जटिल वेबसाइटों में सहायक हो सकता है।
कोड संशोधन के बाद नियमों को फिर से लिखना याद रखें।
get_current_user_id()
मूल्यांकन करने के लिए 0.