Consultando publicação de uma rede de vários sites

Estou trabalhando em uma rede de blogs multisite onde eu tenho que exibir publicação recente na minha página inicial, 10 mensagens por página de navegação.

Eu implementei-o usando o object wpdb com uma declaração sql complexa.

  • Eu obtive o blog ids us get_blog_list function
  • looped através de cada lista de id do blog e gerou uma única consulta sql para obter postagem de todos os sites
  • Usou wpdb->get_result para obter a lista de postagens de todos os subsites

Comecei recentemente a trabalhar no PHP e no WordPress e ainda estou aprendendo.

O uso do object wpdb é o caminho certo nessa situação? Eu li em muitos artigos que usam o object WP_Query . Não sei como usar o object WP_Query nesta situação?

Me ajude a implementar isso de maneira correta / melhor.

Solutions Collecting From Web of "Consultando publicação de uma rede de vários sites"

Você poderia usar sua lista de IDs de blog dessa maneira …

 $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(); } 

Importante são switch_to_blog e restore_current_blog . O resto do código é apenas para ilustrar a idéia.