首页 > 解决方案 > WooCommerce 当前类别隐藏

问题描述

我已经完成了每个父类别中的所有子类别节目。现在我希望在类别页面上不显示当前或活动类别。

$queried_object = get_queried_object();
$child_terms    = get_term_children ( $queried_object->term_id, 'product_cat' );
$main_term     = (is_wp_error($child_terms) || empty($child_terms)) ? get_term ( $queried_object->parent, 'product_cat' ) : $queried_object;

$terms_arg = get_terms( 'product_cat', array(
    'orderby'       => 'name', 
    'hide_empty'    => false,
    'parent'        => $main_term->term_id,
) );

if( !empty( $terms_arg ) && !is_wp_error( $terms_arg ) ){

    foreach( $terms_arg as $display_term ){
        printf(
            '<div class="cat-list"><h3%s><a href="%s">%s</a></h3></div>',
            ($display_term->term_id == $queried_object->term_id) ? : '',
            esc_url(get_term_link($display_term->term_id)),
            $display_term->name,
        );
    }
}

标签: wordpresswoocommerce

解决方案


试试这个

foreach( $terms_arg as $display_term ){

    if( $display_term->term_id != $queried_object->term_id ) {
        printf(
            '<div class="cat-list"><h3><a href="%s">%s</a></h3></div>',
            esc_url(get_term_link($display_term->term_id)),
            $display_term->name,
        );
    }
}

推荐阅读