问题记录

WordPress:WP_Query用meta_value_num排序时重复

描述

$args = array( 
		'meta_query'=>array(
			array(
				'key'=>'bsai_list_amount',
				'type'=>'NUMBER',
			)
		),
		'orderby'=>'meta_value_num',
		'order'=>'DESC'
	);

代码如上,今天在做一个用自定义字段排序的功能时发现一个问题,查询出来的数据在分页的时候会出现重复的问题,仔细想了一下应该是查询的时候这个指定的自定义字段为0,所以wp在排序的时候就是随机排序的,因为全都是0嘛,没办法从大到小,或者从小到大。

解决

在指定orderby的时候加个值,date,如:

$args = array( 
		'meta_query'=>array(
			array(
				'key'=>'bsai_list_amount',
				'type'=>'NUMBER',
			)
		),
		'orderby'=>'meta_value_num date',
		'order'=>'DESC'
	);

发表评论

插入图片