【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関連の記事でお役に立てれば幸いです。

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

  • WordPressで不要になったプラグインを停止・削除する手順+有効化

    このページでは、WordPressで不要になったプラグインを停止・削除する方法をご紹介します。使わないプラグインを有効化しておくとサイトの速度が遅くなったり、-ポイントがいくつかあります。不要なプラグインがあるのであれば、このページを参考に停止・削除してみましょう。 記事を読む

  • 1つのカスタムフィールドで複数の値を登録して表示する方法

    1つのカスタムフィールドで複数の値を登録して表示する方法をご紹介します。複数の値を一つのカスタムフィールドで管理したいかは必見です。3分後には1つのカスタムフィールドで負k数の値を管理できるようになります。 記事を読む

  • WordPressで構築したサイトの好きなところにGoogle Adsenseを表示させる

    WordPressで構築したサイトの好きなところにGoogle Adsenseを表示させるをご紹介します。プラグインを使わずショートコードを利用する方法です。参考にしてください。 記事を読む

  • WordPressの管理画面で不要なメニューを非表示にする方法

    WordPressの管理画面で不要なメニューを非表示にする方法をご紹介します。管理画面のメニューの中には普段は使わないものもあるかと思います。そのまま表示されていても問題ありませんが、邪魔だなと感じた場合は非表示にすることができます。 記事を読む

  • 【WordPress】公開してから時間の経ったコンテンツにメッセージを表示させる方法

    WordPressサイトで公開してから時間の経ったコンテンツにメッセージを表示させる方法をご紹介します。技術系、ニュース系サイトの場合、古い記事の内容は現在の実情にあわないケースがあります。訪問者が古い情報を惑わされないよう、特定の条件に当てはまる古いコンテンツにメッセージを表示する方法です。 記事を読む

コメントを残す


(必須)

*

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