Unter welchen Bedingungen kann ich meinen CPT wie meine CPT-Seite benennen?

Die Geschichte besagt, dass Sie nicht standardmäßig den gleichen CPT-Slug haben können wie die Seite, die Sie für Ihren CPT erstellen müssen. Bei einigen Gelegenheiten konnte ich genau das tun und es funktioniert gut. Beispielsweise:

Ich erstelle meinen CPT

register_post_type('schedule', array( 'labels' => array( 'name' => __('Events'), 'singular_name' => __('Event'), 'all_items' => __('View Events'), 'add_new' => __('New Event'), 'add_new_item' => __('New Event'), 'edit_item' => __('Edit Event'), 'view_item' => __('View Event'), 'search_items' => __('Search Events'), 'no_found' => __('No Eventss Found'), 'not_found_in_trash' => __('No Events in Trash') ), 'public' => true, 'publicly_queryable'=> true, 'show_ui' => true, 'query_var' => true, 'show_in_nav_menus' => false, 'rewrite' => array('slug' => 'schedule', 'with_front' => false), 'capability_type' => 'post', 'hierarchical' => false, 'menu_position' => 21, 'supports' => array('title','editor', 'thumbnail'), 'has_archive' => false )); 

Ich habe meine CPT-Seite:

Benutzerdefinierte Post-Typ-Seite - mit derselben Slug

Meine Permalink-Struktur ist: /press-releases/%year%/%monthnum%/%day%/%postname%/

Schließlich habe ich eine Seitenvorlage mit dem Namen “page-schedule.php”, wo ich dann mein CPT abfrage und es gut, sogar seitenweise anzeigen. Ich bin nicht der Einzige, der dies tun konnte, da ich ein paar Beiträge in wordpress.org-Foren gesehen habe, in denen behauptet wird, dass dies auch möglich war.

Meine Frage ist, was bewirkt genau das und wie kann es reproduziert werden, damit ich nette CPT Permalink Strukturen ohne Plugins erreichen kann?

Solutions Collecting From Web of "Unter welchen Bedingungen kann ich meinen CPT wie meine CPT-Seite benennen?"

Es gibt nichts Magisches daran, Ihr Post-Typ hat kein Archiv ( has_archive ist false), daher gibt es keine Rewrite-Regel für Ihren Post-Typ, die nur /%post_type%/ , die einzigen existierenden Regeln für Ihren Post-Typ sind für /%post_type%/%some_other_thing%/ , es gibt also keinen Konflikt mit Ihrer Seite.