Interne Verschlagwortung von Beiträgen und Seiten

Individuelle Taxonomien in WordPress erstellen
Keine Kommentare

Als Betreiber eines Blogs ist es manchmal ratsam, Beiträge zu klassifizieren, sich quasi eine Art „Wiedervorlage“ zu schaffen. Das lässt sich einrichten, auch wenn dafür ein wenig Handarbeit vonnöten ist.

Wenn man mehrere Jahre halbwegs aktiv bloggt, sammeln sich jede Menge Blogartikel an. Manche werden auch nach mehreren Jahren nach wie vor gut besucht, könnten aber unter Umständen eine kleine Aktualisierung oder einen zusätzlichen Hinweis vertragen. Bei einigen entdeckt man Rechtschreibfehler, und wieder andere sind entweder Löschkandidaten oder benötigen eine starke Überarbeitung. Daher wäre es praktisch, wenn man solche Beiträge innerhalb von WordPress intern klassifizieren könnte. Leider eignen sich die bestehenden Standardtaxonomien – Kategorien und Schlagwörter (engl. Tags) – aus mehreren Gründen nicht wirklich dafür; unter anderem deswegen, weil sie öffentlich sichtbar sind. Doch bevor wir loslegen, würde ich gerne ein paar grundlegende Begriffe klären, damit Sie auch wissen, wovon ich hier rede.

Was sind Taxonomien?

Eine Taxonomie ist ein Modell oder ein Klassifikationsschema, nach der man bestimmte Dinge in Klassen oder Kategorien einsortieren kann. Den meisten von uns dürfte der Begriff Taxonomie aus dem Biologieunterricht bekannt vorkommen: Mithilfe der Taxonomie, als Teilgebiet der Biologie, hat man die Lebewesen in eine hierarchische Struktur eingeordnet.

Taxonomien in WordPress

In WordPress gibt es standardmäßig vier Taxonomien, zwei davon dürften den meisten WordPress-Nutzern bekannt sein: die Kategorien und die Schlagwörter (Tags). Der Unterschied zwischen diesen beiden ist, dass Kategorien – anders als Schlagwörter – verschachtelt werden und somit eine hierarchische Struktur abbilden können. Ähnlich den Ordnern in einem Betriebssystem. Schlagwörter hingegen sind auf eine Ebene beschränkt und eher dafür gedacht, eine flache Struktur, gerne auch kategorieübergreifend, abzubilden. So könnte man einen Artikel in die Kategorie „Anleitungen“ einsortieren und mit den Schlagwörtern „CSS“, „JavaScript“ und „HTML“ bestücken, wenn der Blogartikel eine Anleitung ist, die sich mit dem Thema HTML, CSS und JavaScript beschäftigt.

DevOps Docker Camp

Sie lernen die Konzepte von Docker und bauen Schritt für Schritt eine eigene Infrastruktur für und mit Docker auf.

Warum brauche ich individuelle Taxonomien?

In vielen Fällen reicht der Einsatz der Kategorien und Schlagwörter vollkommen aus, um die Inhalte zu klassifizieren. Aber in bestimmten Fällen stößt man mit den zwei Standardtaxonomien an die Grenzen des machbaren, und hier ist es gut zu wissen, dass man in WordPress individuelle Taxonomien definieren kann. Zum Beispiel, wenn man – und jetzt komme ich zu dem eigentlichen Thema zurück – eine Taxonomie erstellen möchte, die ein spezielles Verhalten an den Tag legt. Wie zum Beispiel, dass Sie im Frontend unsichtbar ist und nur für interne Zwecke eingesetzt werden soll.

Der Code für die individuelle, interne Taxonomie

Möchte man also eine individuelle, interne Taxonomie nutzen, muss man zunächst den in Listing 1 gezeigten Code in die functions.php des aktiven Themes einfügen.

Keine Sorge, den Code müssen Sie nicht abtippen; Sie finden ihn auf GitHub als Gist, wo Sie ihn einfach kopieren bzw. herunterladen können.

// Private Taxonomie
function interne_hinweise() {

  $labels = array(
    'name'                       => _x( 'Interne Hinweise', 'Taxonomy General Name', 'text_domain' ),
    'singular_name'              => _x( 'Interner Hinweis', 'Taxonomy Singular Name', 'text_domain' ),
    'menu_name'                  => __( 'Hinweise', 'text_domain' ),
    'all_items'                  => __( 'Alle Hinweise', 'text_domain' ),
    'parent_item'                => __( 'Übergeordneter Hinweis', 'text_domain' ),
    'parent_item_colon'          => __( 'Übergeordneter Hinweis:', 'text_domain' ),
    'new_item_name'              => __( 'Neuer Hinweis', 'text_domain' ),
    'add_new_item'               => __( 'Neuen Hinweis hinzufügen', 'text_domain' ),
    'edit_item'                  => __( 'Hinweis bearbeiten', 'text_domain' ),
    'update_item'                => __( 'Hinweis aktualisieren', 'text_domain' ),
    'view_item'                  => __( 'View Item', 'text_domain' ),
    'separate_items_with_commas' => __( 'Trenne Hinweise mit Kommata', 'text_domain' ),
    'add_or_remove_items'        => __( 'Hinwiese entfernen oder zufügen', 'text_domain' ),
    'choose_from_most_used'      => __( 'Wähle aus häufigen Hinweisen', 'text_domain' ),
    'popular_items'              => __( 'Häufige Hinweise', 'text_domain' ),
    'search_items'               => __( 'Durchsuche Hinweise', 'text_domain' ),
    'not_found'                  => __( 'Not Found', 'text_domain' ),
    'no_terms'                   => __( 'No items', 'text_domain' ),
    'items_list'                 => __( 'Items list', 'text_domain' ),
    'items_list_navigation'      => __( 'Items list navigation', 'text_domain' ),
  );
  $args = array(
    'labels'                     => $labels,
    'hierarchical'               => true,
    'public'                     => false,
    'rewrite'                    => false,
    'show_ui'                    => true,
    'show_admin_column'          => true,
    'show_in_nav_menus'          => true,
    'show_tagcloud'              => true,
  );
  register_taxonomy( 'hinweise', array( 'post' ), $args );
}
add_action( 'init', 'interne_hinweise', 0 );

Mit diesem Code erstellen Sie eine individuelle Taxonomie, die Interne Hinweise heißt. Durch die diversen Angaben decken Sie die komplette Einbindung in das System sowie diverse Zustände bei der Anzeige im Backend ab: Name des Menüpunkts, Name des Links beim Aktualisieren etc.

Nach dem Hochladen der erweiterten functions.php haben Sie die Möglichkeit, Beiträge sowohl im normalen wie auch im schnellen Bearbeitungsmodus (Quick Edit) mit der neuen Taxonomie zu versehen (Abb. 1).

Abb. 1: Beitrag mit internem Hinweis versehen

Abb. 1: Beitrag mit internem Hinweis versehen

Hier können Sie für die Taxonomie Interne Hinweise verschiedene Werte eingeben. Zum Beispiel „Aktualisieren“ für einen Beitrag, der aktualisiert werden sollte, „Rechtschreibung“ für einen Blogartikel, der Rechtschreibfehler hat, und so weiter – je nachdem, was Sie mit dem jeweiligen Inhalt vorhaben. Anschließend können Sie sich alle Artikel auflisten lassen, die Sie mit dieser neuen, internen Taxonomie versehen haben (Abb. 2).

Abb. 2: Beiträge mit internen Hinweisen in der Übersicht

Abb. 2: Beiträge mit internen Hinweisen in der Übersicht

Wenn Sie auch die Seiten mit diesen internen Hinweisen bestücken möchten, dann müssen Sie die drittletzte Zeile

register_taxonomy( 'hinweise', array( 'post' ), $args );

entsprechend erweitern. Anstelle von (‚post‚) würde man entweder (‚post‚, ‚page‚) oder nur (‚page‘) eingeben. Je nachdem, ob man die internen Hinweise auch auf Seiten oder nur auf den Seiten erlauben möchte.

Entwickler Magazin

Entwickler Magazin abonnierenDieser Artikel ist im Entwickler Magazin erschienen.

Natürlich können Sie das Entwickler Magazin über den entwickler.kiosk auch digital im Browser oder auf Ihren Android- und iOS-Devices lesen. In unserem Shop ist das Entwickler Magazin ferner im Abonnement oder als Einzelheft erhältlich.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -