WordPressのWP_Queryリクエストでテンプレート名を指定する
WordPressで条件を指定して記事や固定ページを取得する場合、WP_Query関数を利用してクエリーを組み立てます。
カテゴリー、タグ、スラッグ、IDでの絞込やソート順の指定など、いろいろな条件で記事を抽出することができます。
テンプレート名で条件指定
最近、テンプレート名を指定した記事の一覧を表示しようと思ったのですが、関数のパラメータに「テンプレート名」がありません。
WordPressでは、固定ページごとのテンプレートファル名がwp_postmetaテーブルに「_wp_page_template」という名前で格納されているため、meta_key, meta_valueの指定で取得できそうです。
早速やってみます。
$args = array('meta_key' => '_wp_page_template', 'meta_value' => 'template_name.php', 'post_type' => 'page', 'orderby' => 'date'); $loop = new WP_Query($args); if ($loop->have_posts()) : // 略
上記のコードで無事に取得出来ました。
以上、WordPressのWP_Queryでテンプレートファイル名で条件指定する方法でした。
では、また。