Woocommerce:如果所选类别是子类别,则获取当前类别及其父类别的名称

时间:2020-04-21 08:05:29

标签: wordpress woocommerce hook-woocommerce

我想在“产品档案”页面(商店页面)的商店循环之前的顶部显示所选类别。

类似:

默认或没有选择类别。
All Products

如果存在选定的类别(例如计算机)。
Computer

如果类别具有子类别并且已被选中(例如 计算机>附件)。
Computer > Accessories

如果类别具有子类别,并且该子类别具有另一个子类别并且当前处于选中状态。 (例如,计算机>附件>机箱)。
Computer > Accessories > Case

不幸的是,以下代码将仅输出当前类别。如果当前类别只是一个子类别,则不会显示我也需要的父类别。

add_action('woocommerce_before_shop_loop', 'show_current_category');
function show_current_category(){
    $cate = get_queried_object();
    if($cate->name === 'product'){
        echo 'All Products';
    }else{
        echo $cate->name;
    }
}

前端的实际预期输出应为:

<a href="link-of-category">Computer</a><span> > </span><a href="link-of-sub-category">Accessories</a><span> > </span><a href="link-of-another-sub-category">Case</a>

0 个答案:

没有答案