Möchten Sie nur die übergeordnete Kategorie für Ihre WordPress-Beiträge anzeigen?
Standardmäßig listen die meisten WordPress-Themes alle Kategorien auf, die mit einem Beitrag verbunden sind. Einige Benutzer möchten jedoch möglicherweise nur die übergeordnete Kategorie anzeigen und untergeordnete Kategorien ausschließen.
In diesem Artikel zeigen wir Ihnen, wie Sie die WordPress-Beitragsschleife ändern können, um nur die übergeordnete Kategorie in einem einzelnen Beitrag anzuzeigen.
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 den folgenden Code in die Datei functions.php Ihres Themes einfügen oder ein Code Snippets Plugin wie WPCode verwenden (empfohlen):
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);
}
Weitere Einzelheiten finden Sie in unserem Leitfaden zum Hinzufügen von benutzerdefiniertem Code in WordPress, ohne Ihre Website zu zerstören.
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 says
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 says
Great! And if i want to give a different css to these categories?
Pedrille says
Awesome ! thks
Nithi says
How to display only Child category? (Like in the image, „Thesis“ above? )
Cami Tirapani says
I’m wondering the same thing. :/
Joseph says
I know its old, but that would just be the current category
sathish says
very useful
JordashTalon says
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 says
WordPress Category functions that is
Kate M says
Didn’t work for me
AselHora says
put date stamps to your posts. this way we know when you wrote it and not include code snippets 5 years old.
John Saddington says
great tut!