カテゴリやタグと同様に「カスタムフィールド」で記事を絞り込んで一覧表示させる方法です。
フォーラムで取り上げられていた カスタムフィールドをタグと同じようにリンクさせたい を元にしたカスタマイズさせていただきました。
例えばカスタムフィールド名(key)が「季節」、値(value)が「冬」のような設定がされている場合、URLの後ろに「?key=季節&value=冬」とパラメータを渡してアクセスするイメージです。
(1)meta.php を用意
テーマフォルダに、新たに meta.php を用意します。(2)meta.php 内に以下を記述
meta.php を開いて、以下のような処理を施します。[php] <?php
query_posts(‘posts_per_page=-1&meta_key=’ . $_GET[‘key’] . ‘&meta_value=’ . $_GET[‘value’]);
if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
ループ処理
<?php endwhile; ?>
<?php else : ?>
<?php endif;
wp_reset_query();
?>
[/php]
フォーラムでは「Custom Field Gui Utility」プラグインでカスタムフィールドを管理しているケースでしたが、プラグインを使わずに、投稿記事画面から直接設定したカスタムフィールドでも使えます。
また、カスタムフィールドの値(value)が複数有る場合の出力方法も掲載されていますが、今回は key : value = 1:1 での出力がやりたかったので、これでひとまずいけそうな感じです。
(3)meta.php へアクセス
カスタムフィールド名(key)が「季節」、値(value)が「冬」の場合、以下のようなURL になります。※パーマリンク構造によっては、http://sample.com/meta/?key=季節&value=冬 のようになります。
http://sample.com/meta?key=季節&value=冬
コメントを残す