
WooCommerce bietet die tolle Möglichkeit, Produkte in Kategorien und Subkategorien zu organisieren. Dabei erstellt es für den User automatisch so genannte Breadcrumbs – also eine Navigationsleiste, mit der man rasch wieder zu einer übergeordneten Kategorie zurückkommt:

Was ist aber nun, wenn ich für eine übergeordnete Kategorie eine eigene Seite gestalten möchte – und nicht die von WooCommerce erstellte Seite.
Das geht relativ einfach.
Was brauche ich?
Zwei Werte sind wichtig
Zunächst benötige ich die ID der Seite, auf die ich die Kategorie umleiten möchte.
Diese finde ich in der URL, wenn ich die Seite im Editor aufrufe, und wird nach „post=“ angezeigt:
wp-admin/post.php?post=869&action=edit
Was wir noch benötigen, ist der „Kategorie-Slug“. Dies ist im Prinzip die „Titelform“ – als wie die Kategorie in der URL angezeigt wird:

Wir müssen eine Funktion einfügen
Wir müssen einige Zeilen Code hineinkopieren. Dies erledigt man im Idealfall in einem Child-Theme in der functions.php
.
Aber keine Angst, wem das nichts sagt: Wir installieren das Plug-In Code Snippets (die Gratisvariante genügt uns):

Mit diesem Plug-In erhalten wir im Menü einen neuen Punkt „Snippets“. Dort erstellen wir eine neue Funktion (PHP) mit folgendem Inhalt:
function wpse_317747_filter_term_link( $termlink, $term, $taxonomy ) {
// Check if it's the 'category' taxonomy and the specific category slug
if ( "product_cat" !== $taxonomy || "meinekategorie" !== $term->slug ) {
return $termlink;
}
// Replace with the ID of your custom page
$target_page_id = 869; // page id of your page
return get_permalink( $target_page_id );
}
add_filter( "term_link", "wpse_317747_filter_term_link", 10, 3 );
Zwei Werte ersetzen wir: Den Slug der Kategorie und die ID der Seite.
Unten wählen wir noch, dass wir das Skript nur im Frontend der Website ausführen – und das war’s! Wenn man nun auf diesen automatisch erzeugten Kategorie-Link klickt, kommt man zu der selbst erstellen Seite.