私は私のホームページに最近の投稿を表示しなければならないマルチサイトブログネットワークに取り組んでいます。1ページあたり10の投稿ナビゲーション。
私は1つの複雑なSQLステートメントでwpdbオブジェクトを使ってそれを実装しました。
get_blog_list
関数wpdb->get_result
を使用しました私は最近PHPとWordPressに取り組み始めましたが、まだそれを学んでいます。
この状況でwpdb
オブジェクトの使用は正しい方法ですか?私はWP_Query
オブジェクトを使用する多くの記事を読みました。この状況でWP_Query
オブジェクトを使用する方法がわかりませんか?
これを正しい方法で実装するのを手伝ってください。
このようにブログIDのリストを使うことができます...
$posts = array();
foreach ( $your_list_of_blog_ids as $blog_id ) {
switch_to_blog( $blog_id );
$query = new WP_Query(
array(
'post_type' => 'any',
'posts_per_page' => 10,
)
);
while ( $query->have_posts() ) {
$query->next_post();
$posts[] = $query->post;
}
restore_current_blog();
}
重要なのは switch_to_blog および restore_current_blog です。コードの残りの部分は、アイデアを説明するためのものです。