07.02.2019
Допустим, есть такая ситуация, что в меню сайта выводятся все категории с записями. Но периодически записи удаляются (допустим, это формат каталога) и нам нужно пустые категории убирать из меню. Если категорий очень много, то постоянно редактировать меню сложно. Поэтому используем функцию, которая будет автоматически убирать из меню пустые рубрики.
Добавим данный код в файл functions.php
:
// Hide empty categories in MENU function gowp_nav_remove_empty_terms($items, $menu, $args) { global $wpdb; $empty = $wpdb->get_col("SELECT term_taxonomy_id FROM $wpdb->term_taxonomy WHERE count = 0"); foreach ($items as $key => $item) { if (('taxonomy' == $item->type) && (in_array($item->object_id, $empty))) { unset($items[$key]); } } return $items; } add_filter('wp_get_nav_menu_items', 'gowp_nav_remove_empty_terms', 10, 3);
Комментарии (2) к “Скрывать пустые категории из меню с помощью функции”
cos
пишет что ошибка при сохранении файла (
Denis Creative
Протестровал, ошибок нет, код по прежнему работает как надо.
Возможно, вы что-то неправильно делаете.