CMSブログソフトWordPressの基本操作と使い方
WordPress3.0.4 ADPHIC Co,.Ltd. SINCE.2008.10.15

HOMEIllustratorのツボadphicContact-Mail

CONTENTS
テンプレートタグ一覧
AD LINK
Fotolia
500万点以上のロイヤリティフリー画像が、なんと100円から使えるイメージバンク。印刷レベルの写真でも500円。ちょっと素材が必要なときに便利です。
TIPS
CATEGORY : ループとループの制御用タグ | UPDATE : 2011.02.24

query_postsで変更したループ条件を、
初期設定に戻す

query_postsでループ条件を変更すると、以降のループはすべて同一条件で表示します。例えばcat=17の記事をquery_postsで取得すると、その後のループはcat=17の記事しか表示しません。wp_reset_query または $query_string を記述すれば変更したループ条件を初期設定に戻せます。

TEMPLATE-TAG<テンプレートタグ>
クエリ条件をリセット
ループの後または新しいループの前に記述

<?php wp_reset_query(); ?>

TEMPLATE-TAG EXAMPLE<記述例>
<?php query_posts('cat=2&order=ASC&orderby=title&posts_per_page=3'); ?>
<?php if(have_posts()) : while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink(); ?>" target="_blank"><?php the_title('<li>','</li>'); ?></a>
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

※下はループ内にセットで記述した例。

<?php query_posts('cat=3&order=ASC&orderby=title&posts_per_page=3'); ?>
<?php if(have_posts()) : while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink(); ?>" target="_blank"><?php the_title('<li>','</li>'); ?></a>
<?php endwhile; endif; wp_reset_query(); ?>

パラメータ:カテゴリーナンバー(2)に属する記事を、タイトル(title)昇順(ASC)で1ページに(3)件表示する設定を、ルーブ後にリセットしています。

下のテンプレートタグは以前から使用していましたが、データベースに無駄なアクセスをすると言う意見もあり、今は使わないようにしています。しかし、ナビリンクでうまくページの分割が出来ないときなど、予備として使用しています。

TEMPLATE-TAG<テンプレートタグ>
クエリ条件をリセット
ループの後に記述

<?php query_posts($query_string); ?>

TEMPLATE-TAG EXAMPLE<記述例>
<?php query_posts('cat=2&order=ASC&orderby=title&showposts=3'); ?>
<?php if(have_posts()) : while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink(); ?>"><?php the_title('<li>','</li>'); ?></a>
<?php endwhile; endif; ?>
<?php query_posts($query_string); ?>

※下はナビリンクでページ分割がうまく機能しない場合の記述例。

<?php query_posts($query_string . "cat=2&order=ASC&orderby=title&showposts=3"); ?>
<?php if(have_posts()) : while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink(); ?>"><?php the_title('<li>','</li>'); ?></a>
<?php endwhile; endif; ?>

INDEX