実は色々なことができるようになっている?WP Queryのカテゴリーとタグの取得をまとめてみた。

サイトやブログ、またはなにかアプリ的なものを作ろうとしたとき、そこにフィードや一覧ページを作りたい。そういったことってありませんか?

よく、動的なページで一覧ページを作るときに出てくるのが「データベース」と言われるものかと思います。

しかし、そのデータベースを使おうと思うとSQLという難しい言語を使ったりしなければならないのです。

ですが、よく目にするブログサイトで使われているWordPressでは、SQLの知識がなくても覚えれば「欲しい情報の一覧」が抽出できる方法があるのです。

今回はそんなWordPressのサイトで使うと便利な関数「WP-Query」についてご紹介していきます。

 

WP-Queryとは何か

WordPressで「欲しい情報の一覧や詳細の抽出」を行うときに使用する、関数と言われるものです。

基本的に、下記のコードを使用して、一覧や詳細に必要なデータを取得して出力するようにしていきます。

<?php $args ="今回はここに入ることをご紹介します。"; ?>
<?php $query1 = new WP_Query( $args ); ?>
<?php if ( $query1->have_posts() ): ?>
	<?php while ( $query1->have_posts() ): ?>
		一覧で出力したい事柄などを記載(また後日解説します。)
	<?php endwhile;wp_reset_postdata(); ?>
<?php endif; ?>

このwp-queryには決まった形があり、決まった文言に沿って、ほしい情報を投げていけば一覧や詳細の情報を取得することができます。詳しくは、CodeX WP-Queryを御覧ください

見た方は「!?!?何書いているの?」となるはずです。私もそうです。なのでここではよく使うものをご紹介していきたいと思います。

〇〇カテゴリーの記事一覧を取得したいとき

WordPressでよく使われるのがカテゴリーと機能です。カテゴリーは自由に増減ができる、フォルダーのようなものです。

なので、自分が管理する際にも使えます。

このカテゴリーの記事郡を取得したいなというときには、下記の方法で取得していきます。

カテゴリーの番号を基準に出力する場合

<?php $args ="cat=カテゴリーの番号"; ?>

と記載します。カテゴリーの番号は、カテゴリー編集ページのURLにある「tag=〇〇」と書いている箇所がカテゴリーの番号になります。

カテゴリーでOR検索をするとき

カテゴリーで記事を分けると「このカテゴリーと○○カテゴリーに入っている記事一覧が欲しい。」ということが出てきます。通常SQLで書くと大変な事がWp-Queryを使うと…

<?php $args ="cat=カテゴリー番号,カテゴリー番号,カテゴリー番号…"; ?>

とすることでカテゴリーのor検索ができるようになるのです。

カテゴリーでAND検索をするとき

ORができればANDがしたくなるのではないでしょうか。AND検索は「〇〇カテゴリーにあって、更に●●カテゴリーにもある記事一覧が欲しい」というときに使います。これをデータベースを用いて行うと初心者にとってはかなりハードルが高くなっています。ですが、WP-Queryを使用すると

<?php $args =array( 'category__and' => array( カテゴリー番号, カテゴリー番号,カテゴリー番号… ) ); ?>

といった感じで記事郡を取得することができるようになるのです。

〇〇タグの記事一覧を取得したいとき

WordPressにはカテゴリーだけではなく、タグと言う機能もあります。その記事郡を取得する方法は

<?php $args ="tag_id=タグの番号"; ?>

と記載します。タグ番号を入れるだけでその記事に属した記事郡を取得することができるようになります。

タグでOR検索をするとき。

タグで記事を分けると「このタグと○○タグに入っている記事一覧が欲しい。」という事が出てきます。通常SQLで書くと大変な事がWp-Queryを使うと…

<?php $args ="tag=タグの番号,タグの番号,タグの番号…"; ?>

とすることでタグのor検索ができるようになるのです。

タグでAND検索をするとき。

ORができればANDがしたくなるのではないでしょうか。AND検索は「〇〇タグにあって、更に●●タグにもある記事一覧が欲しい」というときに使います。これをデータベースを用いて行うと初心者にとってはかなりハードルが高くなってしまいいます。ですが、WP-Queryを使用すると

<?php $args =array( 'tag__in' => array( タグ番号, タグ番号 ) ); ?>

といった感じで記事郡を取得することができるようになるのです。

 

いかがでしたでしょうか。一覧ページを作るときに使えるWp-Query。

今回は初級編として、よく使われるカテゴリーとタグについての取得方法をご紹介しました。

少しハードルは高いかもしれませんが、決まりきった文言を使うだけでありとあらゆる一覧が作れますので、サイトに入れてみてはいかがでしょうか。

また、弊社ではURLに決まりきった文言を入れるとカテゴリーのAND検索やOR検索ができるツールもありますので、上記の内容で難しい!とお考えの方はぜひ弊社にお問い合わせくださいませ。

この記事と同じカテゴリの記事