我需要从多个表中检索数据,wp\\u postmeta获取具有特定类型(问题)的帖子,wp\\u用户获取作者信息,以及wp\\u评论。
我需要这些信息才能在rest api中使用它们
我已经创建了一条新路线
add_action(\'rest_api_init\', function () {
register_rest_route( \'myroute/v1\', \'mydata/\',array(
\'methods\' => \'GET\',
\'callback\' => \'get_data\'
));
});
function get_data($request) {
$args = array(
\'post_type\' => \'question\',
\'post_status\' => \'publish\',
\'posts_per_page\' => 8,
);
如何加入请求并从多个表中获取数据
我需要每个帖子的作者姓名和评论数
最合适的回答,由SO网友:Tom J Nowell 整理而成
如何加入请求并从多个表中获取数据
相反,您不会将其分解为多个步骤,并通过单独的
例如,假设我想列出排名前5位的帖子,并显示一段关于作者的用户元,例如分数。这不能在一个电话中完成,但这没关系,所以我可以在几个电话中完成。例如:
$args = [
\'posts_per_page\' => 5
];
$query = new WP_query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
the_title(); // show the title
$score = get_user_meta( get_the_author_id(), \'score\', true );
echo "Author score:" . absint( $score );
}
}
您不需要通过将用户元表合并到posts表中
WP_Query
, 这没有道理。使用适当的API获取适当的数据,不要尝试将其全部涂抹到一个调用中(这不会使它更快,如果有什么会使它变慢的话)