- 我有一个似乎没有正确排序的get_posts查询。
$args = array(
'post_type' => array(),
'order_by' => 'title',
'order' => 'ASC',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_query' => array(),
);
后面的行填充了post_type
和meta_query
数组,但我不认为他们需要说明问题。我告诉这个按标题升序排序。然而,当查询返回时,我得到一个这样的订单:
这似乎没有押韵或理由。我检查了数据库,没有特殊字符。我甚至运行了选择查询
SELECT *
FROM `prestige_posts`
WHERE post_type = 'workers'
ORDER BY post_title
LIMIT 0 , 30
手动并获得我期望的确切结果。代码中的其他位置具有几乎完全相同的查询并且正常工作。那么为什么这不能正常回归呢?
即。一个函数在同一个文件中正确返回的示例:
$args = array(
'post_type' => $postType,
'orderby' => 'title',
'order' => 'ASC',
'post_status' => 'publish',
'posts_per_page' => -1,
'post_parent' => $entry['id'],
);
$lastposts = get_posts($args);
答案 0 :(得分:0)
我只是个白痴。
关键是orderby
,我使用order_by
。那就是问题所在。我花了好几个小时才发现它。