我在wordpress中编写REST api。 api采用OOP格式。我创建了$ wpdb的新实例,连接工作正常。唯一的问题我无法通过WP_Query()
查询数据库。但是使用普通的sql,我可以得到结果。
每当我使用WP_Query查询时,它似乎都会返回我,表列为null值。
失败
$args = array(
'post_type' => 'custom_type'
);
$result = new WP_Query($args);
SUCCESS
$query = "SELECT * FROM table_name WHERE post_type ='custom_type'";
$result = get_results($query);
我也尝试在WP_Query之前添加斜杠,但无济于事:
$result = new \WP_Query($args);
我的错在哪里?有人请告诉我。提前谢谢。
答案 0 :(得分:0)
你应该在wpquery对象
中调用have_posts()函数$ query2 = new WP_Query($ args2);
if ( $query2->have_posts() ) {
// The 2nd Loop
while ( $query2->have_posts() ) {
$query2->the_post();
echo '<li>' . get_the_title( $query2->post->ID ) . '</li>';
}
// Restore original Post Data
wp_reset_postdata();
}
答案 1 :(得分:0)
我建议您使用query_posts而不是WP_Query并在查询后重置postdata。
query_posts允许您使用分页,摘录和其他功能。
在query_posts之后,您可以使用简单的wploop