Wordpress WP查询未返回所有结果
我想从posts表返回所有父事件(其中post_parent=0) 当我运行一个原始sql查询时,这是非常好的,但是当我在我的PHP类中运行一个wp_查询时,我只会从wp的posts表中收到8行。我关闭了缓存并尝试了其他方法,但我无法理解为什么WP查询不返回所有23行。谢谢你的提示 原始SQL查询(工作正常-23行): WP查询(仅返回错误的8行)Wordpress WP查询未返回所有结果,wordpress,Wordpress,我想从posts表返回所有父事件(其中post_parent=0) 当我运行一个原始sql查询时,这是非常好的,但是当我在我的PHP类中运行一个wp_查询时,我只会从wp的posts表中收到8行。我关闭了缓存并尝试了其他方法,但我无法理解为什么WP查询不返回所有23行。谢谢你的提示 原始SQL查询(工作正常-23行): WP查询(仅返回错误的8行) 有两件事我会尽力去理解你问题的原因 (1.)使用'suppress_filters'=true以确保没有任何筛选器正在修改您的查询 $args =
有两件事我会尽力去理解你问题的原因 (1.)使用'suppress_filters'=true以确保没有任何筛选器正在修改您的查询
$args = array(
'post_type' => 'tribe_events',
'posts_per_page' => -1,
'post_status' => 'publish',
'post_parent' => 0,
'suppress_filters' => true
);
$evts = new WP_Query($args);
(2.)使用过滤器“posts_request”转储WordPress正在使用的实际MySQL查询
add_filter( 'posts_request', function( $sql ) {
error_log( 'SQL=' . $sql );
return $sql;
} );
当然,要使此筛选器正常工作,“suppress\u filters”必须为false。
suppress\u filters
FTW!!在我做自定义查询的所有时间里,我从未遇到过这样的问题。非常感谢您填补了这一知识空白!
$args = array(
'post_type' => 'tribe_events',
'posts_per_page' => -1,
'post_status' => 'publish',
'post_parent' => 0,
'suppress_filters' => true
);
$evts = new WP_Query($args);
add_filter( 'posts_request', function( $sql ) {
error_log( 'SQL=' . $sql );
return $sql;
} );