作者
查詢和某些作者(使用者)有關的文章,可以使用 4 個參數:
- author(整數):使用者識別碼
- author_name(字串):使用者的暱稱(“user_nicename” 欄位)
- author__in(數組):使用者識別碼
- author__not_in(數組):使用者識別碼
擷取一個作者的文章
根據使用者識別碼 擷取:
$query = new WP_Query( 'author=123' );
根據使用者的暱稱(“user_nicename” 欄位)擷取:
$query = new WP_Query( 'author_name=rami' );
擷取多個作者的文章
根據使用者識別碼 擷取多個作者的文章:
$query = new WP_Query( 'author=2,6,17,38' );
排除作者的文章
排除一個作者可以使用使用者識別碼 前邊加上 “-” 的方式:
$query = new WP_Query( 'author=-12' );
多作者查詢
擷取多個作者的文章:
$query = new WP_Query( array( 'author__in' => array( 2, 6 ) ) );
排除多個作者的文章:
$query = new WP_Query( array( 'author__not_in' => array( 2, 6 ) ) );
分類
關於分類有 5 個可用的參數:
- cat(整數):分類別識別碼
- category_name(字串):分類別名
- category__and(數組):分類別識別碼
- category__in(數組):分類別識別碼
- category__not_in(數組):分類別識別碼
擷取一個分類的文章
根據分類的 ID 擷取一個分類的文章(包含此分類的子分類):
$query = new WP_Query( 'cat=4' );
根據分類的別名擷取一個分類的文章(包含此分類的子分類):
$query = new WP_Query( 'category_name=staff' );
根據分類的 ID 擷取一個分類的文章(不包含此分類的子分類):
$query = new WP_Query( 'category__in=4' );
擷取多個分類的文章
根據分類的 ID 擷取多個分類的文章:
$query = new WP_Query( 'cat=2,6,17,38' );
根據分類別名擷取多個分類的文章:
$query = new WP_Query( 'category_name=staff,news' );
根據分類別名擷取同時擁有幾個分類的文章:
$query = new WP_Query( 'category_name=staff+news' );
排除分類
想要排除一些分類只需要在分類別識別碼 前加上 “-” 號:
$query = new WP_Query( 'cat=-12,-34,-56' );
多分類查詢
擷取同時有多個分類的文章,下邊的代碼會擷取必須同時擁有 ID 為 2 和 6 的分類的文章:
$query = new WP_Query( array( 'category__and' => array( 2, 6 ) ) );
擷取多個分類的文章,不包含其子分類,下邊的代碼擷取了擁有 ID 為 2 或者 ID 為 6 的分類的文章:
$query = new WP_Query( array( 'category__in' => array( 2, 6 ) ) );
排除一些分類的文章:
$query = new WP_Query( array( 'category__not_in' => array( 2, 6 ) ) );