2012-01-27 45 views
0

WordPress自帶的網站,設置自定義的首頁。在大多數情況下,在頭版的結構,像這樣:困難的WordPress循環,不容易描述

貓1個標題 從類別最新留言

  • 未來5個從類別
  • 貓2標題 最新職位從類職位

  • 未來5類別的帖子
  • 3類標題 最新職位從類別

  • 從 類
  • 的問題是未來5個帖子,一個帖子可以被分配到多個類別。因此,我可以寫一篇「Sample Post」並將其發佈在Cat 1和Cat 2類別中。從這裏開始,首頁將在兩個類別下顯示該帖子,並且它也將是最近發佈的帖子,因此它將在主頁上以這兩個類別的Sample Post發佈。

    我想讓帖子只顯示在主頁上的一個類別下。任何其他關於這個問題的建議也會受到歡迎。

    回答

    1

    我不確定您使用什麼方法檢索結果,但您可以使用post__not_inexclude參數從查詢中排除某些帖子(即已經出現的帖子)。

    首先建立一個排除陣列:

    $exclude_this = array(); 
    

    在循環中,這篇文章的ID添加到該數組。例如在循環中:

    $exclude_this[] = get_the_ID(); 
    

    ,然後在每個查詢使用該陣列以排除內的任何職位。例如,爲了從與類ID 5,所有帖子除了的帖子在$exclude_this

    $query = new WP_Query(array( 
         'category__in' => array(5) , 
         'post__not_in' => $exclude_this, 
    )); 
    

    我沒有測試以上,但它應該work.You 可以需要確保$exclude_this是一個整數數組,而不是它們的字符串表示。