本文へ移動

PARAMETER REFERENCE

投稿・投稿者・権限で対象を決める

ID、slug、親子関係、投稿者、password、添付ファイルから対象を限定します。

このページで確認できること

迷っている条件に近い項目から確認し、必要な値と注意点へ進んでください。

  • 手動で選んだ記事だけを指定順で表示したい
  • 固定ページを親子関係で探したい
  • 投稿者・権限・passwordで限定したい

値・選択肢・前提

パラメーター名だけでなく、何を決める値か、どの選択肢が使えるかを同時に確認します。

パラメーター役割主な選択肢・注意
post__in / post__not_in投稿IDを含める・除外する

整数IDの配列同じIDを両方へ入れるのは矛盾です。post__inが空配列だと全件が返るため、入力配列が空ならquery自体を実行しない判定も必要です。

post_name__in複数の投稿slugで限定

slugの配列入力順を保つならorderby=post_name__inを組み合わせます。

post_parent__in指定した親を持つ子を取得

親post IDの配列入力した親の順を並び順にも使う場合はorderby=post_parent__inを選びます。

p / name通常投稿をIDまたはslugで単体取得

pは整数ID、nameはslugBuilderの単体取得modeではどちらか一つを選びます。post_typeも対象に合わせます。

page_id / pagename固定ページをIDまたはpathで単体取得

page_idは整数、pagenameはslug/path子ページはparent/childのpathで指定する場面があります。

post_parent / post_parent__not_in親IDで限定・親IDを除外

単一ID、または除外ID配列post_parent=0はtop levelだけを取得します。

title投稿titleの完全一致

完全一致させる文字列部分一致の検索ではありません。通常のキーワード検索ならsを選びます。

author / author_name / author__in / author__not_in投稿者をID・nicenameで限定

単一ID、user_nicename、ID配列author_nameは表示名ではなくuser_nicenameです。Builderでは同じfamilyから一方式を選びます。

has_password / post_passwordpasswordの有無・特定passwordで限定

true / false、またはpassword文字列post_passwordを指定しながらhas_password=falseにはできません。機密保護の仕組みそのものとして頼らないでください。

perm現在ユーザーの権限で限定

readable / editableログイン状態とcurrent userで結果が変わるため、cacheやpublic表示との相性を確認します。

post_mime_type添付ファイルをMIME typeで限定

image/jpeg / image/png など(複数可)通常はpost_type=attachment、post_status=inheritと組み合わせます。

suppress_filtersquery filterの抑制を指定

true / false / default通常は未設定で十分です。trueにすると翻訳やpluginのposts_* filterなど、必要な変更まで外れる可能性があります。

組み合わせる前に確認すること

実装で起きやすい衝突を、条件を増やす前に確認します。

含めるIDと除外IDを重ねない

post__inとpost__not_inに同じIDがある場合、Builderは矛盾としてerrorにします。

単体取得shortcutは一つに寄せる

p、name、page_id、pagename、parent、titleを並べるより、対象を表す一方式へ決める方が保守しやすくなります。

指定順にはorderbyも合わせる

手動選定のおすすめ記事ではpost__inとorderby=post__inをセットにすると、管理側の意図した順を保てます。

最小構成の実装例

そのまま貼るのではなく、対象post typeとtemplateの使い方に合わせて調整してください。

PHP対象指定
$args = [    'post_type'           => 'post',    'post__in'            => [ 42, 17, 85 ],    'orderby'             => 'post__in',    'ignore_sticky_posts' => true,];

仕様の最終確認対象WordPress versionのcode referenceも確認してください。WordPress Developer Resources

ほかの分類を見る

条件を組み合わせるときは、隣り合う分類の値や前提もあわせて確認すると設定漏れを防げます。

次に確認すること

「対象指定」の値と注意点を確認できたら、ほかの分類との関係を見直し、実装例かBuilderで実際のクエリに落とし込んでみてください。

このページを活用する

あとで見返す・共有する

お気に入りに保存できます。役に立ったポイントは、いいねや共有で教えてください。

任意のご支援 役に立ったときだけ、活動を応援できます OFUSEはサイト・記事制作に使います。支援の有無で、読める内容や使える機能は変わりません。