Woocommerce 使用挂钩或过滤器按类别对产品进行排序

想要在functions.php中使用钩子/过滤器借助自定义类别对产品进行排序


例如:我有一个产品“A”,有 2 个类别“特色”和“最受欢迎”,而同一页面上有另一个产品“B”,该产品仅分配有“特色”类别。


我希望能够以这样的方式对这 2 个产品进行排序,即所有具有“最受欢迎”类别的产品都应排在第一位,其余仅具有“特色”类别的产品将在之后显示。


需要使用functions.php 挂钩或过滤器来完成此操作。这是我发现有用的一个,但我只知道如何按日期对其进行排序。


add_filter('woocommerce_get_catalog_ordering_args', 'catalog_ordering_args');


function catalog_ordering_args($args) {

    $args['orderby'] = 'date';

    $args['order'] = 'desc';

    return $args;

}


紫衣仙女
浏览 101回答 1
1回答

慕哥9229398

任何努力做到这一点的人,我都有解决方案。我以前不知道这一点(wp noob!!),但每个产品在高级选项卡中都有一个菜单订单字段,该字段设置为零(0)。我使用“PW Bulk Edit”插件将我的特定类别产品的值更改为 -1,并且所有产品都已正确排序。(即:菜单顺序值为 -1 的产品将排序较高,值为 0 的产品将排序在后面)注:数值越低,产品的地位越高。
打开App,查看更多内容
随时随地看视频慕课网APP