我正在尝试从API检索产品并按价格订购,但我看到一些奇怪的行为。 产品价格的示例结果集按顺序排列:
$1.00
$10.00
$110.00
$2.00
$200.00
$2.50
它似乎将这些值比较为字符串而不是浮点数(或某些类型)。因此,110.00在2.00
之前更新:
这是我要点击的网址(删除了oauth信息):
http://www.example.com/wc-api/v3/products?filter%5Bcategory%5D=all&filter%5Bclass%5D=all&filter%5Blimit%5D=6&filter%5Bmin_price%5D=0&filter%5Border%5D=ASC&filter%5Borderby%5D=meta_value&filter%5Borderby_meta_key%5D=_price&filter%5Bq%5D=&filter%5Btag%5D=all&page=1
和更易读的格式的参数:
filter[category]: all
filter[class]: all
filter[limit]: 6
filter[min_price]: 0
filter[order]: ASC
filter[orderby]: meta_value
filter[orderby_meta_key]: _price
filter[tag]: all
page: 1
答案 0 :(得分:0)
解决方案是将meta_value_num
用于orderBy
过滤器。这在WooCommerce中记录不足,我已经与他们创建了一个问题。