Подменю исчезает при нажатии в подменю в wordpress

Вот мои функции костюма, которые я написал для меню и подменю в моей теме WordPress, но после того, как я протестировал их, подменю исчезло, когда я нажал на подменю, потому что WordPress не отделяет категории от подкатегорий, поэтому параметр для них " cat", что означает, что когда я нажимаю на подменю, функция, которая создает подменю, проверяет, есть ли у cat=id в URL-адресе дочерние категории, но это не так, потому что это дочерняя категория, я новичок в WordPress, и я не не знаю, как с этим бороться:

function costume_menu() {
$categories =  get_categories('hide_empty=0&style=none&parent=0'); 
  foreach ($categories as $category) {
    (is_category($category->term_id)) ? $active = 'class="active_menu"' : $active = '';
    $nav = '<li>';
    $nav .= '<a '.$active.'href="'.get_category_link($category->term_id).'">'.strtoupper($category->cat_name).'</a>';
    $nav .= '</li>';

    echo $nav;
  }

}

function costume_submenu($cat) {

$categories =  get_categories("child_of=$cat&hide_empty=0"); 
  foreach ($categories as $category) {
    (is_category($category->term_id)) ? $active = 'class="active_menu"' : $active = '';
    $nav = '<li>';
    $nav .= '<a '.$active.'href="'.get_category_link($category->term_id).'">'.strtoupper($category->cat_name).'</a>';
    $nav .= '</li>';

    echo $nav;
  }
}

person Igor Ivanovski    schedule 19.03.2012    source источник


Ответы (1)


Каким бы вы хотели видеть свое меню?

  • Parent category a (current) so show all
    • Child category a (current) so show all
      • Sub Sub cat
  • Родительская категория б
  • Родительская категория c
  • Родительская категория д

Если это конечный результат, то нам нужно

  1. Возьмите параметр категории из URL-адреса
  2. Реализуйте рекурсивную функцию для перебора всех категорий.
  3. Важно также, что нам нужно получить потомков этой категории, чтобы иметь возможность определить, должно ли это меню показывать, был ли выбран его дочерний элемент или дочерние элементы.

Более точные детали, чтобы следовать, если хотите.

person Mwayi    schedule 05.04.2012