get_postsで投稿データを引っ張ることはよくやっているが、パラメータにpage_id=1とかpagename=xxxなどと
やっても何も出てこないので焦った。
原因が不明で、納得が行かないのだが、そのget_posts()が内部で使っているであろう、WP_Queryを使うと上手く行く。
$query = new WP_Query( ‘page_id=2’ );
echo $query->posts[0]->post_content;
という書式になり、気軽に使いズライ。やはりget_postsの方が良い。
それにしても、何故効かない?ユーザは合ってるし、ステータスは問題ないし・・・
後で分かった。
まず、get_postsとWP_Queryのパラメータは一緒のようだ。
紛らわしいところでは、
cat=(id)
category_name=カテゴリースラッグ
p=(投稿id)
name=(投稿スラッグ)
page_id=(固定ページID)
pagename=(固定ページスラッグ)
特にpagenameはアンダーバーは入らないところが引っかかる。困ったものだ。
また、ページのタイトルで検索する事は不可能なようだ。
その場合、wpdbを使ってオリジナルのルーチンを組むしか無いようだ。
コメント