WordPressの検索機能を実装してみます。
文字列で検索
文字列を入力して検索してみます。
PHP
<form method="get" action="<?php echo home_url(); ?>"> <input type="search" name="s" id="s"> <input type="submit" id="searchsubmit" value="検索"> </form>
「?s=検索文字列」の形でパラメータがURLに付与されて検索されるようになります。
カテゴリーで検索
カテゴリーから検索してみます。
PHP
<form method="get" action="<?php echo home_url(); ?>"> <input type="hidden" name="s" id="s"> <?php $categories = get_categories(); if ( $categories ) : ?> <ul> <li> <input type="radio" name="cat" id="cat" value="" checked> すべて </li> <?php foreach ( $categories as $category ): ?> <li> <input type="radio" name="cat" value="<?php echo esc_attr( $category->term_id); ?>"> <?php echo esc_html( $category->name ); ?> </li> <?php endforeach; ?> </ul> <?php endif; ?> <input type="submit" id="searchsubmit" value="検索"> </form>
「?s=&cat=検索カテゴリーID」の形でパラメータがURLに付与されて検索されるようになります。
タグで検索
タグから検索してみます。
PHP
<form method="get" action="<?php echo home_url(); ?>"> <input type="hidden" name="s" id="s"> <?php $tags = get_tags(); if ( $tags ) : ?> <ul> <li> <input type="radio" name="tag" id="tag" value="" checked> すべて </li> <?php foreach ( $tags as $tag ): ?> <li> <input type="radio" name="tag" value="<?php echo esc_attr( $tag->slug); ?>"> <?php echo esc_html( $tag->name ); ?> </li> <?php endforeach; ?> </ul> <?php endif; ?> <input type="submit" id="searchsubmit" value="検索"> </form>
「?s=&tag=検索タグスラッグ」の形でパラメータがURLに付与されて検索されるようになります。
【参考サイト】
コメントが承認されるまで時間がかかります。