WP_Query()' orderby' => '标题'不工作

时间:2016-03-02 12:28:36

标签: wordpress sql-order-by wp-query

所以我有这个查询

$args = array(
    'post_type' => 'course', // custom post type
    'post_status'   => 'publish',
    'posts_per_page' => -1,
    'orderby'   => 'title'
);

$courses = new WP_Query($args);

这给了我想要的东西,但是orderby语句被忽略了。当我转储$courses->request时,我得到了这个

  

' SELECT wp_posts。* FROM wp_posts WHERE 1 = 1 AND wp_posts.post_type   ='当然' AND((wp_posts.post_status ='发布'))订购Wp_posts.menu_order ASC'

它将orderby默认为menu_order而不是title。这里发生了什么?

2 个答案:

答案 0 :(得分:1)

我也遇到了同样的问题,我使用“ post_title”而不是“ title”解决了该问题。

$args = array(
    'post_type' => 'course', // custom post type
    'post_status'   => 'publish',
    'posts_per_page' => -1,
    'orderby'   => 'post_title' // change here
);

$courses = new WP_Query($args);

答案 1 :(得分:0)

检查您是否使用过parse_querypre_get_posts 钩在网站的某个地方

add_action( 'pre_get_posts', 'function_name' );
add_filter( 'parse_query',  'function_name' );