【WordPress】プラグインを使わず検索機能に絞り込み機能を実装しよう。
  • 【WordPress】プラグインを使わず検索機能に絞り込み機能を実装しよう。
  • 記事公開:2015/03/01
  • 最終更新:2015/09/15

【WordPress】プラグインを使わず検索機能に絞り込み機能を実装しよう。

WordPressの検索機能にカテゴリーやタグを指定した絞り込み機能を実装する方法をご紹介します。コピペで簡単に実装できますので、興味のある方は参考にしてください。

この記事は約 7 分で読めます。

Wordpressのカスタマイズなら全てお任せ!

http://takayakondo.com/

WordpressのカスタマイズならWordpressカスタマイザーにお任せください!
毎月5件の限定受注。お見積もりはいつでも無料です。

検索機能に絞り込み機能を実装しよう

WordPressで構築したサイトで、検索を行うときにキーワードやタグで絞り込みができるカスタマイズをやってみたいと思ったことはありませんか?

今回、とある案件で必要となったのでカスタマイズ方法を調べてみました。
プラグインを使う必要は無く、WordPressのデフォルト機能で実現可能なようです。

個別にご紹介していきます。

キーワード+カテゴリーの絞込み検索

検索機能を実装(検索窓を設置)したい箇所に、以下のコードを記述するだけ。
指定したカテゴリーにある指定キーワードを含む記事を検索することができます。

<form method="get" action="<?php bloginfo( 'url' ); ?>">
<input name="s" id="s" type="text" />
<?php wp_dropdown_categories('depth=0&orderby=name&hide_empty=1&show_option_all=カテゴリー選択'); ?>
<input id="submit" type="submit" value="検索" />
</form>

参考サイト:WordPressでカテゴリー&タグを絞り込み検索をする

上記のタグを設置すると、検索窓+プルダウン式のカテゴリー一覧が表示されます。
キーワードを指定して、カテゴリーを選択、検索することができます。

キーワード+タグの絞り込み検索

検索機能を実装(検索窓を設置)したい箇所に、以下のコードを記述するだけ。
指定したタグが登録されていて指定キーワードを含む記事を検索することができます。

<form method="get" action="<?php bloginfo( 'url' ); ?>">
<p>検索</p>
<input name="s" id="s" type="text" />
<?php $tags = get_tags(); if ( $tags ) : ?>
<select name='tag' id='tag'>
<option value="" selected="selected">タグ選択</option>
<?php foreach ( $tags as $tag ): ?>
<option value="<?php echo esc_html( $tag->slug); ?>"><?php echo esc_html( $tag->name ); ?></option>
<?php endforeach; ?>
</select>
<?php endif; ?>
<input id="submit" type="submit" value="検索" />
</form>

参考サイト:WordPressでカテゴリー&タグを絞り込み検索をする

上記のタグを設置すると、検索窓+プルダウン式のタグ一覧が表示されます。
キーワードを指定して、タグを選択、検索することができます。

キーワード+カテゴリー+タグの絞込み検索

検索機能を実装(検索窓を設置)したい箇所に、以下のコードを記述するだけ。
指定したカテゴリーにある指定したタグが登録されていて指定キーワードを含む記事を検索することができます。

<form method="get" action="<?php bloginfo( 'url' ); ?>">
<p>検索</p>
<input name="s" id="s" type="text" />
<?php wp_dropdown_categories('depth=0&orderby=name&hide_empty=1&show_option_all=カテゴリー選択'); ?>
<?php $tags = get_tags(); if ( $tags ) : ?>
<select name='tag' id='tag'>
<option value="" selected="selected">タグ選択</option>
<?php foreach ( $tags as $tag ): ?>
<option value="<?php echo esc_html( $tag->slug); ?>"><?php echo esc_html( $tag->name ); ?></option>
<?php endforeach; ?>
</select>
<?php endif; ?>
<input id="submit" type="submit" value="検索" />
</form>

参考サイト:WordPressでカテゴリー&タグを絞り込み検索をする

上記のタグを設置すると、検索窓+プルダウン式のカテゴリー一覧が表示されます。
キーワードを指定して、カテゴリーを選択、タクを選択、検索することができます。

まとめ

プラグインを使わず検索機能に絞り込み機能を実装する方法をご紹介しました。

最初はプラグインを導入しないと無理かと思ったのですが、必要ありませんでした。
想定していたより簡単にカスタマイズできた印象です。

このコンテンツが、どなたかの参考になると幸いです。

シェアしていただきありがとうございます。

この記事が気に入ったら【いいね】しよう!

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する

著者:とあるWEBディレクター

岡山在住のWebディレクターです。Wordpressを使ったWEBサイト制作を中心に7年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

  • contactform7のチェックボックスを改行して縦に並べる方法

    contactform7のチェックボックスを改行して縦に並べる方法をご紹介しました。チェックボックスの項目を改行するのとしないのとでは、チャックのし易さなどが大きく変わってきます。興味のある方は、3分間だけこのコンテンツを参照してください。 記事を読む

  • WordPressの投稿を複数のページに分割する方法

    投稿を書いていると内容が非常に多くなり、複数のページに分割したいケースがあるかと思います。WordPressには、1つの投稿や固定ページを複数のページに分割する機能が標準で装備されています。このページでは、投稿や固定ページを複数のページに分割する方法をご紹介しています。 記事を読む

  • WordPressのカスタム投稿タイプでアイキャッチを有効にする方法

    wordpressのカスタム投稿タイプでアイキャッチを有効にする方法を解説します。カスタム投稿を有効にすれば、アイキャッチも当然有効になると考えていたので、ちょっとビックリしました。やり方を調べたので参考にしてください。 記事を読む

  • プラグインは使わない!WordPressサイトに高品質なパンくずナビをコピペで設置する方法

    プラグインを使わずにWordPressサイトに高品質なパンくずナビをコピペで設置する方法をご紹介します。設置はコピペだけで実装可能です。興味のある方は3分間だけコンテンツを確認してみてください。 記事を読む

  • WordPressの抜粋で知っておくべき基本と3つのカスタマイズ

    WordPressの抜粋で知っておくべき基本と3つのカスタマイズをご紹介します。このコンテンツを読むだけで、WordPressの抜粋に関して、基本とよく使うカスタマイズをマスターすることができます。興味のあるあなたは、5分間だけこのコンテンツを見てください! 記事を読む

コメントを残す


(必須)

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)