Хорошо, так что это не так уж сложно, сначала мы просто проверим, является ли пункт меню таксономией, затем получим счетчик и отобразим его!
function ggstyle_menu_item_count( $output, $item, $depth, $args ) {
// Check if the item is a Category or Custom Taxonomy
if( $item->type == 'taxonomy' ) {
$object = get_term($item->object_id, $item->object);
// Check count, if more than 0 display count
if($object->count > 0)
$output .= "<span class='menu-item-count'>".$object->count."</span>";
}
return $output;
}
add_action( 'walker_nav_menu_start_el', 'ggstyle_menu_item_count', 10, 4 );
Чтобы получить количество элементов для вывода в <a>
пункта меню, нам нужно разделить вывод $ и вставить наш контент, чтобы собрать его обратно.
function ggstyle_menu_item_count( $output, $item, $depth, $args ) {
// Check if the item is a Category or Custom Taxonomy
if( $item->type == 'taxonomy' ) {
$object = get_term($item->object_id, $item->object);
// Check count, if more than 0 display count
if($object->count > 0) {
$output_new = '';
$output_split = str_split($output, strpos($output, '</a>') );
$output_new .= $output_split[0] . "<span class='menu-item-count'>".$object->count."</span>" . $output_split[1];
$output = $output_new;
}
}
return $output;
}
add_action( 'walker_nav_menu_start_el', 'ggstyle_menu_item_count', 10, 4 );
Повторяющаяся запись: https://wordpress.stackexchange.com/questions/229767/show-posts-count-for-categories-and-tags-in-wp-nav-menu