我想确定一个分类术语是否有子项。请参见下面的标记,我将解释我的意思:
<?php
$terms = get_terms("wpsc_product_category");
if ( !empty( $terms ) && !is_wp_error( $terms ) ){
foreach( get_terms( \'wpsc_product_category\', array( \'hide_empty\' => false, \'parent\' => 0 ) ) as $parent_term ) { ?>
<li class="header-menu-item" data-hook="<?php echo $parent_term->slug; ?>">
<a href="<?php echo home_url(); ?>/products/<?php echo $parent_term->slug; ?>"><?php echo $parent_term->name; ?></a>
</li>
<?php }
} ?>
因此,这将输出
wpsc_product_category
分类法,但我想确定分类法术语是否有子项,如果有,请添加
parent
分类至相关
header-menu-item
因此,我可以将jquery函数附加到它。我不确定这是否可行?如有任何建议,将不胜感激!
最合适的回答,由SO网友:DanBeckett 整理而成
这个get_term_children
function 应该在这里有所帮助。
这将返回一个数组,其中要么包含子项,要么为空。在循环时检查此数组是否真实,然后可以确定是否添加该类。
<?php
$terms = get_terms(\'wpsc_product_category\');
if ( !empty( $terms ) && !is_wp_error( $terms ) ){
foreach( get_terms( \'wpsc_product_category\', array( \'hide_empty\' => false, \'parent\' => 0 ) ) as $parent_term ) {
$term_children = get_term_children($parent_term->term_id, \'wpsc_product_category\'); ?>
<li class="header-menu-item<?php echo ($term_children ? \' parent\' : \'\'); ?>" data-hook="<?php echo $parent_term->slug; ?>">
<a href="<?php echo home_url(); ?>/products/<?php echo $parent_term->slug; ?>"><?php echo $parent_term->name; ?></a>
</li>
<?php }
} ?>