在Wordpress中按两个元ACF字段排序

时间:2018-04-02 14:35:47

标签: wordpress advanced-custom-fields

我尝试按价格在我的网站中对产品进行排序(没有Woocommerce,但是由自定义post_type创建)。我有两个高级自定义字段= priceprice_sale。 我需要这样的结果:

  • 1999 $
  • 2222 $(price_sale)4000 $
  • 3200 $(price_sale)3600 $
  • 3500 $

我有这个查询参数:

 {
        "categories": "sofas",
        "meta_query": {
           "relation": "AND",
           "1":{
              "relation": "AND",
              "query_one": {
                 "key": "price",
                 "type": "NUMERIC"
              },
              "query_two": {
                 "key": "price_sale",
                 "type": "NUMERIC"
              }
           }
        },
        "orderby": {
           "query_two": "ASC",
           "query_one": "ASC"
        }
     }

结果 - 所有促销产品都按照惯例按照价格排序,如下所示:

  • 1999 $
  • 3500 $
  • 2222 $(price_sale)4000 $
  • 3200 $(price_sale)3600 $

我需要他们对两个字段进行排序,并像上面的第一个例子一样显示。

1 个答案:

答案 0 :(得分:0)

我认为最简单的方法是在查询后对它们进行排序。但是,你可以通过使用这个替代方案来实现它,这样你就不必在事后按自己排序了:

post_orderby上添加过滤器WP Codex post_orderby使用此功能,您可以实现一个排序功能,该功能可以连接两个已排序的子查询并对其进行重新排序。

我没有看到另一个机会。