Bei WPBeginner wissen wir, dass das Erstellen einer gut strukturierten Hierarchie von Kategorien und Unterkategorien die Benutzererfahrung und die Suchmaschinenoptimierung verbessern kann.
Standardmäßig listen die meisten WordPress-Themes alle Kategorien auf, die einem Beitrag zugeordnet sind.
Einer unserer Besucher fragte jedoch, ob es möglich sei, nur die übergeordnete Kategorie in der Beitragsschleife anzuzeigen und die untergeordneten Kategorien auszuschließen. Er möchte die Aufmerksamkeit seiner Besucher auf das übergeordnete Thema der einzelnen Beiträge lenken und nicht auf eine komplexe Hierarchie.
In diesem Artikel zeigen wir Ihnen, wie Sie mit einem Code-Snippet die WordPress-Beitragsschleife ändern und nur die übergeordnete Kategorie in einem Einzelbeitrag anzeigen können.
Wann wird in WordPress nur die übergeordnete Kategorie angezeigt?
Viele Website-Besitzer verwenden übergeordnete und untergeordnete Kategorien, um eine Struktur für ihre Websites zu schaffen.
In einem Reiseblog können beispielsweise Reiseziele nach Kategorien geordnet sein, wobei jede Region eine übergeordnete Kategorie und die Städte als untergeordnete Kategorien fungieren.
In ähnlicher Weise kann ein Food-Blog Rezepte veröffentlichen, die in übergeordnete und untergeordnete Kategorien unterteilt sind. Eine übergeordnete Kategorie könnte zum Beispiel die Art der Küche sein und eine untergeordnete Kategorie die Art des Gerichts.
Die meisten WordPress-Themes verwenden den
Template-Tag_category ()
, um alle mit einem Beitrag verbundenen Kategorien aufzulisten.
Diese Funktion ist effizient, aber sie zeigt alle Kategorien alphabetisch an und ignoriert die Eltern/Kind-Beziehung vollständig.
Schauen wir uns also an, wie man dieses Verhalten ändern und nur die übergeordnete Kategorie in der WordPress-Schleife anzeigen kann.
Nur übergeordnete Kategorie in WordPress-Post-Schleife anzeigen
Für dieses Tutorial müssen Sie Ihre WordPress-Theme-Dateien bearbeiten. Wenn Sie dies noch nicht getan haben, lesen Sie unseren Artikel über das Kopieren und Einfügen von Codeschnipseln in WordPress.
Zunächst müssen Sie einen Code in die Datei functions.php Ihres Themes einfügen oder ein Plugin für Code-Snippets verwenden. Wir empfehlen die Verwendung von WPCode, da Sie damit Code hinzufügen können, ohne dass Ihre Website beschädigt wird, und seine intelligente Code-Snippet-Validierung hilft Ihnen, häufige Code-Fehler zu vermeiden.
In unserem Leitfaden erfahren Sie, wie Sie individuellen Code in WordPress hinzufügen können, ohne Ihre Website zu zerstören.
Für dieses Tutorial werden wir die kostenlose Version von WPCode verwenden. Sie hat zwar nicht alle erweiterten Funktionen der Vollversion, aber sie enthält alles, was Sie für den Anfang brauchen.
Als Erstes müssen Sie das WPCode Plugin installieren und aktivieren. Wenn Sie Hilfe benötigen, können Sie unserer Schritt-für-Schritt-Anleitung zur Installation eines WordPress Plugins folgen.
Nach der Aktivierung können Sie die Seite WPCode “ New Snippet aufrufen
Dadurch wird eine Seite geöffnet, auf der Sie ein individuelles Snippet erstellen können.
Zunächst müssen Sie einen Titel für das Snippet hinzufügen. Danach können Sie das folgende Codeschnipsel kopieren und in das Codevorschau-Fenster einfügen.
function wpb_get_parent_terms($taxonomy = 'category')
{
$currentPost = get_post();
$terms = get_the_terms($currentPost->ID, $taxonomy);
if (is_wp_error($terms)) {
/** @var \WP_Error $terms */
throw new \Exception($terms->get_error_message());
}
$map = array_map(
function ($term) use ($taxonomy) {
return '<a href="' . esc_url(get_term_link($term->term_id,
$taxonomy)) . '" title="' . esc_attr($term->name) . '">
' . $term->name . '
</a>';
},
array_filter($terms, function ($term) {
return $term->parent == 0;
})
);
return implode(', ', $map);
}
Als Nächstes müssen Sie die Option „PHP Snippet“ aus dem Dropdown-Menü „Code-Typ“ auswählen und den Schalter „Inaktiv“ auf „Aktiv“ umschalten.
Klicken Sie abschließend auf den Button „Snippet speichern“, um Ihre Einstellungen zu speichern.
Dieser Code erstellt einfach eine neue Funktion wpb_get_parent_terms()
. Standardmäßig zeigt diese Funktion nur übergeordnete Kategorien an.
Als Nächstes müssen Sie diese Funktion in Ihren WordPress-Theme-Dateien dort platzieren, wo Sie nur die übergeordnete Kategorie anzeigen möchten.
Um herauszufinden, in welche Vorlagendatei Sie schauen müssen, lesen Sie unser WordPress-Vorlagenhierarchie-Cheatblatt für Anfänger.
Im Grunde suchen Sie nach dem Template-Tag the_category()
; innerhalb der WordPress-Schleife. Sobald Sie ihn gefunden haben, müssen Sie ihn durch den folgenden Code ersetzen:
<?php wpb_get_parent_terms(); ?>
Mit diesem Code wird nur Ihre übergeordnete Kategorie angezeigt.
Wenn Sie mehrere Kategorien haben, die übergeordnete oder eigenständige Kategorien sind, werden alle diese Kategorien ebenfalls angezeigt.
Das Code-Snippet funktioniert auch für alle anderen Taxonomien. Zum Beispiel, WooCommerce Produktkategorien oder jede benutzerdefinierte Taxonomie, die Sie haben können.
Ändern Sie den Code einfach wie folgt:
<?php wpb_get_parent_terms( 'product_cat '); ?>
Dieser Code zeigt Produktkategorien für einen WooCommerce-Shop an.
Es werden auch nur die übergeordneten oder eigenständigen Kategorien für ein Produkt angezeigt.
Wenn Sie eine benutzerdefinierte Taxonomie anzeigen möchten, ersetzen Sie product_cat durch den Namen Ihrer benutzerdefinierten Taxonomie.
Expertenanleitungen zur Anzeige von Kategorien in WordPress
Da Sie nun wissen, wie Sie nur die übergeordnete Kategorie für Ihre WordPress-Beiträge anzeigen können, möchten Sie vielleicht einige andere Anleitungen zur Anzeige von Kategorien in WordPress sehen:
- Wie man nur die untergeordnete Kategorie in der WordPress-Post-Schleife anzeigt
- Wie man Unterkategorien auf Kategorieseiten in WordPress anzeigt
- Wie man Kategoriebeschreibungen in WordPress anzeigt
- Wie man die Kategorie-Reihenfolge in WordPress ändert
- Wie man die letzten Beiträge einer bestimmten Kategorie in WordPress anzeigt
- Wie man Kategorien in WordPress ein-/ausblendet (ultimative Anleitung)
- Wie man leere Kategorien in WordPress Widgets anzeigt
- Wie man einzelne Kategorien in WordPress unterschiedlich gestaltet
- Wie Sie Ihre Unterkategorien in WordPress ausblenden oder gestalten
- Hinzufügen von Taxonomiebildern (Kategoriesymbole) in WordPress
Wir hoffen, dass dieser Artikel Ihnen geholfen hat zu lernen, wie Sie nur die übergeordnete Kategorie für Ihre WordPress-Beiträge anzeigen können. Vielleicht interessieren Sie sich auch für unsere Anleitung zur Anzeige von benutzerdefinierten Feldern außerhalb der Schleife oder unsere Expertenauswahl der besten AI-Chatbot-Software für Ihre Website.
Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.
Syed Balkhi
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Davide
Great! And if i want to give a different css to these categories?
Pedrille
Awesome ! thks
Nithi
How to display only Child category? (Like in the image, „Thesis“ above? )
Cami Tirapani
I’m wondering the same thing. :/
Joseph
I know its old, but that would just be the current category
sathish
very useful
JordashTalon
You should vote this post up on Wordpress I’ve noticed a huge lack of adding the Depth feature to Wordpress Functions: http://wordpress.org/extend/ideas/topic/add-depth-parameter-to-the_category?replies=3#post-21041
JordashTalon
Wordpress Category functions that is
Kate M
Didn’t work for me
AselHora
put date stamps to your posts. this way we know when you wrote it and not include code snippets 5 years old.
John Saddington
great tut!