1. テーマ
  2. query_posts タグの基本

query_posts タグの基本

query_posts タグは、Wordpressループによって表示される投稿の表示方法を指定することができます。ここでは、query_posts タグの基本的な使い方についてご紹介します。

query_posts タグとは

query_posts タグとは、Wordpressループによって表示される投稿の表示方法を指定するときに使います。

WordPressループとは

一般的なブログでは、トップページにいくつかの投稿記事が最新順で表示されますよね?こうした繰り返しの処理を行うための記述のことを、「ループ」といいます。

ループの基本構造は、次のとおりです。

<?php if (have_posts()) : ?>
		// 投稿一覧を表示する前の処理内容
	<?php while (have_posts()) : the_post(); ?>
		// 各投稿を表示する処理内容
	<?php endwhile; ?>
		// 投稿一覧を表示した後の処理内容
<?php else : ?>
		// 投稿が無いときの処理内容
<?php endif; ?>

WordPressループの基本的な内容については、下記ページでご紹介しています。

さて、Wordpressのテーマでは、上記のようなループをテンプレートファイルの中に記述することで投稿の一覧を表示させているわけですが、この「表示順序を変更したい」とか「特定のカテゴリーに属する投稿だけを表示させたい」ということもあるでしょう。このようなカスタマイズを実現するのが、query_posts タグです。

query_posts タグの基本的な使い方

query_posts タグは、ループが始まる前に記述する必要があります。また、ループが終わったあとには、クエリをリセットするために「<?php wp_reset_query(); ?>」と書きます。基本的には、下記のように記述します。

<?php query_posts( 引数 ); ?>
//ループ開始
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php endwhile; endif; ?>
//ループ終了
<?php wp_reset_query(); ?>

赤い文字で書いた「引数」には、先ほど例に挙げた「表示順序を変更したい」とか「特定のカテゴリーに属する投稿だけを表示させたい」などの指定したい内容を記述します。

表示順序を変更するには「order」あるいは「orderby」という引数を、特定のカテゴリーに属する投稿だけを表示するには「cat」あるいは「category_name」という引数をそれぞれ指定します。

例えば、スラッグが「wordpress」というカテゴリーに属する投稿だけを表示するには、下記のように記述します。

<?php query_posts( 'category_name=wordpress' ); ?>

query_posts タグの中に指定できる引数は他にもたくさんあります。詳細は、下記ページで確認できます。

おすすめの書籍

小さなお店&会社の WordPress超入門

WordPressでビジネスサイトを作るために必要な、基本的な知識が理解できる“超”入門書。Web制作に必要なHTML・CSS・PHPなどの専門知識がなくても読み進められる1冊です。SEO(検索エンジン最適化)やセキュリティの対策についても解説されています。

おすすめのテーマ

WordPressテーマ「NEXTAGE (tcd021)」

WordPressテーマ「LAW」

コーポレートサイト(企業サイト)向けのテーマ。第一印象で信頼性や専門性を的確にアピールし、Webサイトのゴールである「お問い合わせ」まで自然に繋がっていく“導線”にこだわったテンプレートです。

カテゴリー

ビジネスサイトを作りたいあなたに

おすすめのテーマ、あります。