【问题标题】:(Wocommerce Filtering) How can I get a product attribute from the current category?(Woocommerce 过滤)如何从当前类别中获取产品属性?
【发布时间】:2020-02-11 13:18:14
【问题描述】:

我想根据当前类别中的特定产品属性创建过滤器。其概念是,每当用户浏览某个类别的产品时,都会有过滤器,对应于当前类别的产品中存在的产品属性。在示例中,当用户浏览类别 laptops 时,我希望显示一组过滤器,因此他可以单击它们并过滤掉结果,仅显示具有特定属性的选定产品。

我现在正在研究 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>';
}

【问题讨论】:

    标签: php woocommerce filter


    【解决方案1】:

    为什么不使用默认的“按属性过滤”小部件? 这将按您的意愿工作。仅当显示的产品具有分配给它们的属性时,才会显示过滤器小部件。

    我不确定你是否尝试过。

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

    除了这个默认选项,还有一个很好的免费 woocommerce 产品过滤器插件。你也可以试试这个。

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

    【讨论】:

    • 感谢您通知我,尽管我知道这些插件。我更喜欢自己做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-12
    • 2020-12-22
    • 1970-01-01
    • 2016-02-23
    • 2020-08-21
    • 2021-08-05
    相关资源
    最近更新 更多