Custom Taxonomies erstellen
Mit Taxonomien (wie Tags und Kategorien) gruppierst du deine Inhalte. In WordPress kannst du, neben Tags und Kategorien, auch eigene Taxonomien erstellen und deine Inhalte so weiter und sinnvoller gruppieren und im Loop ausspielen.
Auch wenn es empfohlen wäre, erstelle ich die Custom WordPress Taxonomy in diesem Tutorial nicht als Site-Specific Plugin, sondern füge den entsprechenden Code einfach in die functions.php Datei ein.
Anmerkung
Es gibt hierarchische und nicht-hierarchische Taxonomien – also solche mit und ohne Unter-Taxonomien. Kategorien können Unterkategorien haben und sind somit hierarchische Taxonomien. Tags wiederum können keine Unter-Tags haben und sind daher nicht-hierarchische Taxonomien.
<?php // Sprich den 'init' Hook an und füge deine Funktion, welche die Taxonomie definiert, als zweiten Parameter hinzu add_action( 'init', 'prefix_create_custom_non_hierarchical_taxonomy'); // Wir erstellen die Funktion, die die Custom Taxonomy beschreibt function prefix_create_custom_non_hierarchical_taxonomy() { // Wir fügen eine nicht-hierarchische Taxonomien hinzu und kommentieren die Stellen, die geändert werden müssen, sollte es sich um eine hierarchische Taxonomien handeln $labels = array( 'name' => _x( 'Dein Taxonomie-Name', 'taxonomy general name' ), 'singular_name' => _x( 'Taxonomie-Name', 'taxonomy singular name' ), 'search_items' => __( 'Durchsuche Taxonomie-Name' ), 'all_items' => __( 'Alle Dein Taxonomie-Name' ), // Anstatt null müsste bei einer hierarchische Taxonomie IN DEN FOLGENDEN BEIDEN WERTEN der Eltern-Taxonomie-Name hinein 'parent_item' => null, 'parent_item_colon' => null , 'edit_item' => __( 'Taxonomie-Name Bearbeiten' ), 'update_item' => __( 'Taxonomie-Name speichern' ), 'add_new_item' => __( 'Neuer Taxonomie-Name' ), 'new_item_name' => __( 'Neuer Taxonomie-Name Titel' ), 'menu_name' => __( 'Taxonomie-Name' ), ); $args = [ 'hierarchical' => false, // oder true wenn es eine hierarchische Taxonomie sein soll 'labels' => $labels, 'show_ui' => true, 'show_admin_column' => true, 'query_var' => true, 'rewrite' => ['slug' => 'custom-taxonomy'], ]; // Jetzt registrieren wir die Custom Taxonomy register_taxonomy('custom-taxonomy', ['post'], $args); // in dem Array definierst du, für welche Post Types die Taxonomie registriert werden soll } ?>
Hier einmal der Code für hierarchische Taxonomien
<?php add_action('init', 'bwrsld01_create_regionen_non_hierarchical_taxonomy'); function bwrsld01_create_regionen_non_hierarchical_taxonomy() { $labels = array( 'name' => _x('Region', 'taxonomy general name'), 'singular_name' => _x('Region', 'taxonomy singular name'), 'search_items' => __('Durchsuche Regionen'), 'all_items' => __('Alle Dein Regionen'), 'parent_item' => __( 'Eltern Region' ), 'parent_item_colon' => __( 'Eltern Region:' ), 'edit_item' => __('Region Bearbeiten'), 'update_item' => __('Region speichern'), 'add_new_item' => __('Neue Region'), 'new_item_name' => __('Neue Regions-Titel'), 'menu_name' => __('Regionen'), ); $args = [ 'hierarchical' => true, 'labels' => $labels, 'show_ui' => true, 'show_admin_column' => true, 'query_var' => true, 'rewrite' => ['slug' => 'region'], ]; register_taxonomy('region', ['klster'], $args); } ?>
Du kannst die Custom Taxonomie folgendermaßen ausgeben:
<?php the_terms( $post->ID, 'custom-taxonomy', 'Custom Taxonomy: ', ', ', ' ' ); ?>
Um ein eigenes Template für die Custom Taxonomy zu erstellen, nenne die PHP-Datei taxonomy-{taxonomy-slug}.php.
P.S. Wenn dir der Artikel gefallen hat, abonniere doch die wöchentlichen Tutorials auf YouTube, den E-Mail-Newsletter oder Beteilige dich an der Diskussion auf Facebook.
Die wichtigsten Git commands im Überblick
Most important Git commands Set User git config –global user.name... Programmieren lernen
Was ist Headless WordPress?
Was bedeutet der Begriff Headless WordPress? Wenn wir über Headless... Programmieren lernen
Filter Hooks im WordPress Development
Filter Hooks im WordPress Development verwenden Was sind WordPress Filter... Programmieren lernen
Kommentare