Ich verwende den folgenden wp_list_categories
Code auf Kategorieseiten. Wenn die aktuelle Seite eine übergeordnete Kategorie ist, werden alle untergeordneten Kategorien dieser Kategorie angezeigt. Wenn es sich bei der aktuellen Seite um eine untergeordnete Kategorie handelt, werden alle untergeordneten Kategorien der übergeordneten Kategorie mit Ausnahme der aktuellen Kategorie angezeigt.
parent; $catname = get_cat_name( $cat ); if ($parent != '') { echo 'Related Products
'; echo ''; wp_list_categories( array( 'title_li' => '', 'child_of' => $parent, 'exclude' => $cat, 'use_desc_for_title' => 0 ) ); echo '
'; } else { echo '' . $catname . ' Products
'; echo ''; wp_list_categories( array( 'title_li' => '', 'child_of' => $cat, 'use_desc_for_title' => 0 ) ); echo '
'; } } ?>
Allerdings merke ich jetzt, dass ich jede der aufgeführten Kategorien in ein
get_categories
ich recht, wenn ich annahm, dass der einzige Weg dies zu tun ist, get_categories
zu verwenden und dann das benötigte HTML mit einer foreach
Schleife auszugeben?
Ich verwende jetzt den folgenden Code, mit dem ich die Liste nach Bedarf formatieren kann:
< ?php if (is_category( )) { $thiscat = get_category( get_query_var( 'cat' ) ); $catid = $thiscat->cat_ID; $parent = $thiscat->category_parent; if (!empty ($parent) ) { //child category pages $catlist = get_categories( array( 'child_of' => $parent, 'orderby' => 'id', 'order' => 'DESC', 'exclude' => $catid, 'hide_empty' => '0' ) ); //widget title echo 'Related Products
'; //categories list foreach ( $catlist as $category ) { echo ''; echo '' . $category->cat_name . '
'; echo '
'; } } else { //parent category pages $catname = get_cat_name( $catid ); $catlist = get_categories( array( 'child_of' => $catid, 'orderby' => 'id', 'order' => 'DESC', 'hide_empty' => '0' ) ); //widget title echo '' . $catname . ' Products
'; foreach ( $catlist as $category ) { echo ''; echo '' . $category->cat_name . '
'; echo '
'; } } } ?>