У меня есть следующий фрагмент кода в моем шаблоне WordPress, и я хотел бы изменить его, чтобы он отображал только категории верхнего уровня, а не все категории:
<?php
/**
* Generate list of EDD categories to browse
*/
if ( $categories ) { ?>
<div class="search-cats">
<div class="search-cat-text">
<?php _e( 'Or browse by category: ', 'checkout' ); ?>
</div>
<nav>
<?php
/**
* Generate list of EDD category links
*/
foreach ( $categories as $category ) {
$link = get_term_link( $category, 'download_category');echo '<a href="' . esc_url( $link ) . '" rel="tag">' . $category->name . '</a>';
}
?>
</nav>
</div>
<?php } ?>
Кто-нибудь может мне помочь?
Точка на родителя => 0
<?php
/**
* Generate list of EDD categories to browse
*/
$args = array(
'orderby' => 'name',
'taxonomy' => 'download_category',
'hide_empty' => 0,
'parent' => 0
);
$categories = get_categories($args);
Вы используете свой код, как это с помощью get_categories()
, тебе стоит попробовать :
$args = array(
'orderby' => 'name',
'parent' => 0
);
родитель
(целое число) Получить прямые дочерние элементы этого термина (только термины, чей явный родитель является этим значением). Если передано 0, возвращаются только термины верхнего уровня. По умолчанию это пустая строка.
Прочитайте больше : http://codex.wordpress.org/Function_Reference/get_categories#Get_only_top_level_categories