(电子商务过滤)如何从当前类别中获取产品属性?

时间:2020-02-11 13:18:14

标签: php woocommerce filter

我想从当前类别的特定产品属性中创建过滤器。其概念是,每当用户浏览产品类别时,就会有与当前类别产品中存在的产品属性相对应的过滤器。在示例中,当用户浏览笔记本电脑类别时,我希望显示一组过滤器,因此他可以单击它们并过滤出结果,仅显示具有特定属性的选定产品。

我现在正在研究PHP和WooCommerce,所以到目前为止我还没有得到任何结果。到目前为止,我已经尝试了此代码,但我只获得了想要的特定属性,但是对于所有产品,无论类别如何。之所以起作用,是因为我获得了检查的属性的所有值,并且在单击属性时获得了正确的结果。我知道这段代码中没有“检查当前类别”,因为我不知道该如何编写,并且多次失败以进行正确的检查。

任何帮助将不胜感激。 预先谢谢你

function filters_cpu( $args = array() ) { 
    $terms = get_terms( 'pa_cpu' );
    echo '<ul>';
    foreach ($terms as $each_term) {
        echo '<li>';   
        echo '<a href="' . get_term_link( $each_term ) . '">' . $each_term->name . '</a>';
        echo '</li>';   
    }
    echo '</ul>';
}

1 个答案:

答案 0 :(得分:0)

为什么不使用默认的“按属性过滤”窗口小部件? 这将按您的意愿工作。仅当所显示的产品已为其分配了那些属性时,才会显示过滤器小部件。

我不确定您是否尝试过。

https://docs.woocommerce.com/document/woocommerce-product-search/widgets/product-filter-attributes/

除此默认选项外,还有一个不错的免费woocommerce产品过滤器插件。您也可以尝试这个。

https://wordpress.org/plugins/woocommerce-products-filter/

相关问题