Template nach Pfad / Slug im Zusammenhang mit dem benutzerdefinierten Post-Typ anwenden?

Ich habe einen benutzerdefinierten Beitragstyp namens “project” und eine begleitende Einzelansichtsvorlage mit dem Namen single-project.php Auf der Zielseite für jedes Projekt habe ich eine Unternavigation, die auf separate Unterabschnitte verweist, die verwandte Elemente wie “Related Projekte “und” Verwandte Ressourcen “. Gibt es eine Möglichkeit, Vorlagen basierend auf dem Pfad und benutzerdefinierten Post-Typ zu erstellen, um mit diesen Seiten umzugehen? Wenn ein Projekt zum Beispiel “Test Project” heißt und die Subnav-URL auf test-project/related-resources , gibt es eine Möglichkeit für mich, eine Vorlage zu erstellen, die related-resources automatisch durch Verweis auf den Pfad / Slug zusammen mit dem benutzerdefinierten Beitragstyp?

Danke für einen Einblick hier.

Solutions Collecting From Web of "Template nach Pfad / Slug im Zusammenhang mit dem benutzerdefinierten Post-Typ anwenden?"

Sie können ein Projekt nicht als Basis für einen Permalink festlegen, da Sie für jedes einzelne eine Umschreibungsregel eingeben müssen.

Was Sie tun können, ist eine benutzerdefinierte Taxonomie related-resources erstellen:

 function wpse_287202_related_resources_taxonomy() { $labels = array( ... ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'public' => true, 'show_ui' => true, 'show_admin_column' => true, 'show_in_nav_menus' => true, 'show_tagcloud' => true, ); register_taxonomy( 'related-resources', array( 'product', 'post', 'page' ), $args ); } add_action( 'init', 'wpse_287202_related_resources_taxonomy', 0 ); 

Es muss mit Ihrem benutzerdefinierten Post-Typ und Posts, Seiten oder anderen benutzerdefinierten Post-Typen verknüpft werden, die Sie verwandten Ressourcen hinzufügen möchten. Sie tun das, indem Sie den zweiten Parameter von register_taxonomy ändern.

Fügen Sie in Ihrem product Posttyp related-resources zu taxonomies :

 'taxonomies' => array( 'related-resources' ), 

Jetzt, wenn Sie das Projekt bearbeiten, fügen Sie “Amazing Project 17” zur Ressourcentaxonomie in der gleichen Weise hinzu, wie Sie eine Kategorie hinzufügen und sie nur für das Projekt überprüfen würden, auf das sie sich bezieht. In diesem Setup können Sie nicht festlegen, dass ein Projekt eine verwandte Ressource für ein anderes Projekt ist, das jedoch geändert werden kann.

In jedem Post-, Seiten- oder benutzerdefinierten Post-Typ außer dem project Sie der Taxonomie zugeordnet haben, können Sie “Erstaunliches Projekt 17” auswählen und es wird als verwandte Ressource für das jeweilige Projekt angezeigt.


Jetzt müssen Sie alles anzeigen und wissen, welche Vorlage zu verwenden WP-Hierarchie überprüfen. Zugehörige Ressourcen werden taxonomy-related-resources.php Datei taxonomy-related-resources.php angezeigt. get_post_type() Sie sicher, dass das project von der Anzeige ausgeschlossen wird, da es Teil der zugehörigen Ressourcentaxonomie ist, indem Sie get_post_type() überprüfen.

Um den Link zu verwandten Ressourcen auf der Projektseite anzuzeigen, verwenden Sie:

 $term = get_the_terms( $post->ID, 'related-resources' )[0]; echo '' . __( 'Related Resoucrces', 'text_domain' ) . ''; 

Wenn die Dinge etwas verwirrend erscheinen, lesen Sie mehr über benutzerdefinierte Taxonomien und wie sie mit benutzerdefinierten Post-Typen verwendet werden können.