AIブログの収益化
 
WP_Query徹底解説!WordPressで思い通りの投稿を絞り込む究極ガイド

WP_Query徹底解説!WordPressで思い通りの投稿を絞り込む究極ガイド

WordPressのWP_Query は、WordPressでカスタムクエリ(投稿の絞り込み・取得)を行うための非常に強力なクラスです。

$args(引数)を指定することで、投稿タイプ・カテゴリ・タグ・カスタムフィールドなど、さまざまな条件で投稿を取得できます。 WP_Query に渡せる $args(引数)の主な要素を一覧で紹介します。以下は代表的なクエリパラメータで、投稿の取得条件を詳細に指定できます。


🔷 基本パラメータ

パラメータ名 説明
post_type 投稿タイプ 'post', 'page', カスタム投稿タイプ
posts_per_page 取得件数 4, -1(すべて)
offset 何件目から取得するか 10(11件目以降)
paged ページ番号(ページネーション用) 2(2ページ目)
post_status 投稿ステータス 'publish', 'draft', 'private'
orderby 並び順の基準 'date', 'title', 'modified', 'rand', 'meta_value'
order 昇順 or 降順 'ASC', 'DESC'

🔷 投稿ID・スラッグ指定

パラメータ名 説明
p 特定の投稿ID 23
name 投稿スラッグ 'my-post'
post__in 特定の投稿IDの配列(絞り込み) [1, 5, 9]
post__not_in 除外する投稿ID [7, 8]

🔷 カテゴリ・タクソノミー関連

パラメータ名 説明
cat カテゴリID 3
category_name カテゴリスラッグ 'news'
category__in 複数カテゴリIDを含む [3, 5]
category__not_in 除外カテゴリID [1, 6]
tag タグスラッグ 'featured'
tag__in タグIDの配列 [2, 3]
tax_query カスタムタクソノミークエリ array([...])(下記参照)

🔷 カスタムフィールド(meta)関連

パラメータ名 説明
meta_key メタキー名 'price'
meta_value メタバリュー '100'
meta_compare 比較演算子 '=', '!=', '>', '<', 'LIKE'
meta_query 複数条件をまとめる array([...])(複雑な検索)

🔷 日付関連

パラメータ名 説明
year 2025
monthnum 6
day 20
date_query 複雑な日付条件 array([...])

🔷 その他

パラメータ名 説明
s キーワード検索 'WordPress'
author 著者ID 1
author__in 著者IDの配列 [1, 2]
author_name 著者スラッグ 'admin'
ignore_sticky_posts 固定投稿を無視 true
post_parent 親投稿ID 25(階層ページ等)

🔶 tax_query の例(カスタムタクソノミー)

'tax_query' => array(
    array(
        'taxonomy' => 'genre',
        'field'    => 'slug',
        'terms'    => array( 'drama', 'comedy' ),
        'operator' => 'IN',
    ),
),

✅ あなたの例の解説

$args = array(
    'posts_per_page' => 4, // 最新4件
    'post_type' => 'post', // 通常投稿
    'orderby' => 'date',   // 投稿日時順
    'order' => 'DESC',     // 新しい順
    'category__in' => get_term_children($parent_id, 'category'), // 特定親カテゴリの子カテゴリを対象
);

WP