2013-03-03 3 views
0

Я хочу показать дочернюю категорию и все дочерние элементы, находящиеся под этим дочерним элементом.Wordpress Display ТОЛЬКО ребенок и ребенок

Моя структура выглядит следующим образом

  • Page 1
    • Page 11
    • Page 12
      • Page 123
  • Page 2
    • Page 22
    • Page 23
      • Page 234
  • Page 3

Даже если у родителя я не хочу, чтобы отобразить его, я хочу только дисплей и один уровень вниз, а также один уровень вниз. Если у ребенка есть ребенок, он не должен отображаться!

Мой код, и он находится внутри цикла. И он отображает каждую категорию под страницами 1, 2 и 3. Это то, что делают wp_list_categories, но как я могу решить эту проблему, возможно, wp_list_categories или get_category?

<?php 
if (is_category()) { 
    $cat = get_query_var('cat'); 
    $parent = get_category ($cat); 
    if ($parent->parent) { 
    wp_list_categories ('title_li=&child_of=' . $parent->parent); 
    } else { 
    wp_list_categories ('title_li=&child_of=' . $cat); 
    } 
} 

?> 

Спасибо!

ответ

0

Вы можете использовать параметр depth, чтобы определить количество уровней, которые будут включены в список.

В структуре у меня есть:

  • Кошка 1 (ID: 238)
    • Кошка 1.1 (ID: 239)
    • Кошка 1.2 (ID: 240)
      • Кошка 1.2. 1 (ID: 241)

Пример кода из category.php:

$cat = get_query_var('cat'); 

$catObj = get_category($cat); 
echo $catObj->name; 

$args = array('hide_empty' => 0, 'child_of' => $cat, 'depth' => 1, 'title_li' => ""); 
wp_list_categories ($args); 

Выход /?cat=238:

  • Кошка 1
    • Кошка 1.1
    • Кошка 1.2

Выход /?cat=240:

  • Cat 1,2
    • Cat 1.2.1

Вы можете игнорировать hide_empty и title_li параметры я использовал. Посмотрите на wp_list_categories()reference для получения дополнительных параметров.

Смежные вопросы