我在我的主题中使用woocommerce,它附带了一个Product\\u猫术语,作为商店Product上的一个废弃类别。我需要在每个PRODUCT\\U cat存档中显示其直接子项和子项,但不显示子项子项。
我试过:
<?php $thispage = $wp_query->post; wp_list_categories("taxonomy=product_cat&term=". $term->slug."&title_li=&child_of=".$thispage->slug);?>
它返回了所有Product\\u cat作为ul和存档的子项im in,但没有返回存档的子项。
我试过:
global $post;
$terms = get_the_terms( $post->ID, \'product_cat\');
foreach ( $terms as $term )
$currentID = get_the_ID();
$args=array(
\'taxonomy\'=>\'product_cat\',
\'term\' => $term->slug,
\'child_of\'=>$currentID
);
$my_query = new WP_Query( $args );
?>
<?php if ( $my_query->have_posts() ): ?>
<?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
<li> <a href="<?php the_permalink(); ?>" id="booklink"><?php the_title();?></a></li>
<?php endwhile; ?>
<?php endif; ?>
它返回了当前存档的所有子项和子项子项,而没有子项本身。
所以我试着:
$term_id = $terms;
$taxonomy_name = \'product_cat\';
$termchildren = get_term_children( $term_id, $taxonomy_name );
echo \'<ul>\';
foreach ( $termchildren as $child ) {
$term = get_term_by( \'id\', $child, $taxonomy_name );
echo \'<li><a href="\' . get_term_link( $term->name, $taxonomy_name ) . \'">\' . $term->name . \'</a></li>\';
}
echo \'</ul>\';
它什么也没有返回。
我说不出话来。有人有线索吗?
*对不起,我的英语很差
SO网友:TheDeadMedic
尝试get_terms( \'product_cat\', \'parent=\' . get_queried_object_id() )
Update: 重读你的问题,我想我有个更好的主意:
<ul class="categories">
<?php
wp_list_categories(
array(
\'child_of\' => get_queried_object_id(),
\'taxonomy\' => \'product_cat\',
\'title_li\' => \'\',
\'depth\' => 2,
)
)
?>
</ul>