Im Wordpress-Dashboard bin ich den folgenden Links gefolgt, um die Kategorieanzeigeoption global einzurichten.
Aussehen -> Anpassen -> Woocommerce -> Produktkatalog -> Kategorieanzeige
Es stehen drei Anzeigeoptionen zur Verfügung.
- Produkte anzeigen
- Unterkategorien anzeigen
- Unterkategorien und Produkte anzeigen
Ich möchte jedoch alle ausschließen Produkte unter Unterkategorien.
Mit anderen Worten, ich möchte Unterkategorien und Produkte nur unter übergeordneten Kategorien anzeigen.
Ich habe den folgenden Ausschnitt auf mehreren Tutorial-Websites gefunden. Der Code funktioniert genau so, wie ich es möchte, deaktiviert aber auch die Such- und Filterfunktion der Admin-Produkte (es werden trotzdem keine Ergebnisse zurückgegeben).
Irgendeine Idee, warum das passiert?
Code: Select all
function exclude_product_cat_children($wp_query) {
if ( isset ( $wp_query->query_vars['product_cat'] ) && $wp_query->is_main_query()) {
$wp_query->set('tax_query', array(
array (
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => $wp_query->query_vars['product_cat'],
'include_children' => false
)
)
);
}
}
add_filter('pre_get_posts', 'exclude_product_cat_children');