STERFIELD

2016/04/27

【wordpress】WP_Queryを指定する配列にquery_stringを加える方法

【wordpress】WP_Queryを指定する配列にquery_stringを加える方法

wordpressにて、記事のリストを表示する際、
通常は、

ですが、

いろいろ条件を指定したい場合、
WP_Queryを使用します。

例えば以下のような感じです。

ちなみにこれは、記事が古い(時間)順番に5件表示されます。

他のアーカイブページでもこれで大丈夫なんですが、
カスタムポストタイプのアーカイブページで使いたい場合、
post_typeを指定する必要があります。

一番最初の場合はpost_typeの指定は必要ありません。
これはそもそもそのページを開いてる時にwp_queryにデフォルトとしてそのページに投稿されている情報が格納されています。

WP_Queryを指定すると、条件が上書きされ、post_typeも「post」になってしまいます。

なので、例えばカスタムポストタイプが「news」の場合、

とすれば、カスタムポストタイプが「news」の記事が表示されるようになります。

ただ、カスタムポストタイプのアーカイブページを開いているのに、
わざわざpost_typeを指定するのはなんか嫌なので、
デフォルトの情報を引き継げないものかと思い、以下のようにしました。

こちらでも先程紹介した方法と同じものが表示されます。

これでいちいちカスタムポストタイプの値を変更する必要がなくなります。

最後に、WP_Queryの指定方法をまとめてくれている記事を紹介します。

WP_Queryの使い方をPHPコードにまとめた便利なコード・スニペット

Author Profile

著者近影

スターフィールド編集部

SHARE

合わせて読みたい