2016-11-04 53 views
0

我想創建由行爲人角色的循環和查詢職位並顯示基於作者的角色搜索詞的結果原來的搜索詞。自定義查詢後打破了WordPress的循環

當我申請我的查詢返回的職位是爲用戶角色,而不是原來的搜索詞。

這是我的查詢和循環;

$ids = get_users(
     array(
      'role' => 'administrator' , 
      'fields' => 'ID' 
      ) 
    ); 


    $query = new WP_Query( 
     array( 
      'author__in' => $ids, 
     ) 
    ); 


     // If the query has data 
     if($query->have_posts()) : 

       // Post loop 
       while ($query->have_posts()) : 

        // Setup post data 
        $query->the_post(); 
        ?> 

        <!-- Do HTML markup and template tags here, eg. the_content(), the_title() etc.. --> 
        <h1>You're a post from administrator - <?php the_title(); ?></h1> 


        <?php get_template_part('template-parts/content', 'search'); ?> 

        <?php 
       endwhile; 

     // End "If the query has data" 
     endif; 

這是我的search.php頁...

因此,舉例來說,如果我有一個從用戶類型「管理員」的職位之一出版了兩帖被打上「英格蘭」和其他不是 - 所以當我去搜索表單並輸入'英格蘭'時,我希望這個代碼顯示這兩個帖子中的一個,但它不顯示這兩個。

所以這似乎是剛剛從用戶類型「管理員」顯示所有文章,而忽略了搜索詞。

我有不知道爲什麼是這樣的話,在我的腦海這段代碼也應如此工作,如果任何人有任何意見或可以點我這將是偉大正確的方向!

回答

1

您正在創建一個自定義的循環,所以你需要添加搜索詞回詢問參數。

$query = new WP_Query( 
     array( 
      'author__in' => $ids, 
      's' => $_GET['s'] 
     ) 
    ); 
+0

你的先生是一個美麗的東西。 塞直它 - 整件事情像一種享受,謝謝! –