What is the simplest way to query posts using blog_id?

I have a post type called video that holds, not surprisingly, multiple embedded videos. Each post has a different video.

I would like to display a specific video in specific locations across different sites. The video posts are on Site 1, and other sites in the network could be Site 2, Site 3, Site 4 and Site 5. All sites are in the same multisite setup.

Each video is currently being identified by matching terms in two custom taxonomies, Taxonomy A and Taxonomy B.

If all posts were on the same blog I would use this to query the right video:

$video_query = new WP_Query( array(
    'post_type' => 'video',
    'post_status' => 'publish',
    'posts_per_page' => 1,
    'no_found_rows' => true,
    'tax_query' => array(
        'relation' => 'AND',
            'taxonomy' => 'TaxA',
            'field' => 'slug',
            'terms' => $the_termA
            'taxonomy' => 'TaxB',
            'field' => 'slug',
            'terms' => $the_termB
) );

if( $video_query->have_posts() ) :
    while( $video_query->have_posts() ) :

How can I make the query only look for posts in Site A?

1 Answer 1


Use switch_to_blog() http://codex.wordpress.org/WPMU_Functions/switch_to_blog, do the query and then restore back using restore_current_blog()


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.