显示动态 WooCommerce 兄弟姐妹和直接子类别列表
Posted
技术标签:
【中文标题】显示动态 WooCommerce 兄弟姐妹和直接子类别列表【英文标题】:Display a dynamic WooCommerce siblings and direct children category list 【发布时间】:2022-01-15 05:19:22 【问题描述】:尝试创建显示当前产品类别的同级和第一级子级的函数。所以不是兄弟姐妹的孩子或孩子的孩子。
类别可以深入 4 级,我需要列表根据当前页面更改显示的内容。
例子:
1 类 2 类 类别 3 3-1 类 3-2 类 3-3 类 3-4 类 第 4 类 5 类我发现一些帖子解释了显示兄弟姐妹或第一级孩子。但我试图将两者结合起来,但没有成功:
Get a list of siblings term ids from current product category in WooCommerce
Display current category first then child categories in WooCommerce
有什么想法吗?任何能够为我指明正确方向的事情都会有所帮助。
【问题讨论】:
【参考方案1】:经过多次尝试和错误,我终于弄明白了:
function wc_cat_menu()
$queried_object = get_queried_object();
$taxonomy = 'product_cat';
$sibling_terms = get_terms( array(
'taxonomy' => $taxonomy,
'hide_empty' => false,
'parent' => $queried_object->parent
) );
echo '<ul>';
foreach( $sibling_terms as $sibling )
if ( $sibling->parent > 0 )
$sibling_id = $sibling->term_id;
$siblingChildren = get_terms( $taxonomy, array(
'parent' => $sibling_id,
'hide_empty' => false
) );
echo '<li><a href="' . get_term_link( $sibling ) . '">' . $sibling->name . '<span> (' . $sibling->count . ')</span></a>';
if( $siblingChildren )
echo '<ul>';
foreach ( $siblingChildren as $child )
echo '<li><a href="' . get_term_link( $child, $taxonomy ) . '">' . $child->name . '<span> (' . $child->count . ')</span></a></li>';
echo '</ul>';
echo '</li>';
echo '</ul>';
在这个过程中学到了很多东西!可能有一种非常有效的方法来实现这一点,欢迎提出任何建议。
【讨论】:
以上是关于显示动态 WooCommerce 兄弟姐妹和直接子类别列表的主要内容,如果未能解决你的问题,请参考以下文章