WordPressで絞り込み検索を自作する方法
front-page.php
<form action="/check/" method="get">
<select name="count">
<option value="" selected>条件を選択</option>
<option value="apple">りんご</option>
<option value="banana">バナナ</option>
</select>
<input type="submit" value="検索する">
</form>
index.php
<?php
$count = $_GET['count'];
$args = array(
'tax_query' => array(
array(
'taxonomy' => 'count',
'field' => 'slug',
'terms' => $count
)
)
);
$posts = get_posts($args);
?>
<?php foreach($posts as $post): setup_postdata($post); ?>
<h1><?php the_title(); ?></h1>
<?php the_excerpt(); ?>
<?php endforeach; ?>
<?php wp_reset_postdata(); ?>
front-page.phpで絞り込み検索をかけて、index.phpで結果を表示させています。
今回はタクソノミーのタームをセレクトボックスに使い絞り込み検索を作成しました。
get_postsを使用して投稿を取得しているので問題なく動きます。