मैं wr_events
अपने custom_taxonomy शब्दों में से एक custom_post_type के साथ अपने url को फिर से लिखने की कोशिश कर रहा हूंevent_type
add_action('init', 'wr_events');
function wr_events() {
register_taxonomy(
'event_type',
'wr_event',
array(
'label' => 'Types',
'singular_label' => 'Typ',
'hierarchical' => true,
'query_var' => true,
'rewrite' => array('slug' => 'events'),
)
);
$labels = array(
'name' => _x('Events', 'post type general name'),
'singular_name' => _x('Event', 'post type singular name')
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'query_var' => true,
'capability_type' => 'post',
'hierarchical' => false,
'menu_position' => null,
'supports' => array('title','editor','thumbnail', 'excerpt'),
'rewrite' => array(
//'slug' => 'event',
'slug' => 'events/%event%',
'with_front' => false
),
'has_archive' => 'events'
);
register_post_type( 'wr_event' , $args );
flush_rewrite_rules();
}
add_action('save_post', 'save_details');
add_filter('post_type_link', 'events_permalink_structure', 10, 4);
function events_permalink_structure($post_link, $post, $leavename, $sample)
{
if ( false !== strpos( $post_link, '%event%' ) ) {
$event_type_term = get_the_terms( $post->ID, 'event_type' );
$post_link = str_replace( '%event%', array_pop( $event_type_term )->slug, $post_link );
}
return $post_link;
}
तो मेरे मामले में मेरी वर्गीकरण शर्तें "कार्यशालाएं" या "व्याख्यान" आदि होंगी url/events/lectures
या url/events/workshops
इस "श्रेणी" से संबंधित मेरे सभी पदों को सूचीबद्ध करेगी
, url/events
जो मेरी सभी घटनाओं के लिए एक कस्टम संग्रह दिखाती है। -> यह वही है जो मैं चाहता हूं लेकिन केवल काम नहीं करने वाली चीज कस्टम-पोस्ट के लिए पूर्ण url है ...
url/events/lectures/post-name
- एक 404 फेंकता है!
कुछ पता है कि ऐसा क्यों हो रहा है? मेरा events_permalink_structure()
कार्य सही ढंग से काम करता प्रतीत होता है क्योंकि यह मेरे पर्मलिंक्स को मेरे इच्छित तरीके से हटा देता है।
मैंने "रिवर्ट एनालाइज़र" प्लगइन स्थापित किया है और यह मुझे दिखाता है "रेगेक्स खाली है" wr_event
।
मैंने भी Permalink सेटिंग्स पर जाकर Rewrite Rules को फ्लश करने की कोशिश की है। हालांकि कोई असर नहीं हुआ।