WordPress WP_QUERY排序被覆盖

时间:2017-10-19 作者:cire

$args = array(
    \'post_type\'      => \'mcm_company\',
    \'orderby\'        => \'title\',
    \'order\'          => \'ASC\',
    \'posts_per_page\' => \'1000\',
    \'post_status\'    => \'publish\',
);
$r = array();       
$the_query = new WP_Query( $args );
我希望看到结果按字母顺序返回,但事实并非如此。最后一个查询是

[request] => SELECT SQL_CALC_FOUND_ROWS  wp_posts.* FROM wp_posts  WHERE 1=1  AND wp_posts.post_type = \'mcm_company\' AND ((wp_posts.post_status = \'publish\'))  ORDER BY wp_posts.menu_order ASC, wp_posts.post_title ASC LIMIT 0, 1000
你可以看到这是错误的ORDER BY. 我假设有什么东西正在覆盖orderby... 有没有办法强制订单标题?

问题来自Post Types Order插件,启用了自动排序选项

1 个回复
SO网友:TheoPlatica

您还可以在运行新的WP\\U查询之前添加以下代码:

remove_all_filters(\'posts_orderby\');
我相信这是不言而喻的。

结束

相关推荐

Ordering posts by an array

我有一个查询,它返回许多不同的自定义帖子类型。我想按帖子类型数组的内容对帖子数组进行排序;e、 g。array(\'post\', \'video\', \'testimonial\'..... );数组(顺序)是固定的。如何在不对每种职位类型进行不同查询的情况下管理此问题?