WordPressのget_search_form()を使ったサイト内検索フォームの表示方法

公開日 : 最終更新日 :

カテゴリー :

WordPressで検索フォームを表示するには、get_search_form()を使います。get_search_form()はただ検索フォームを表示するだけではなく、オリジナルの検索フォームをインクルードして表示することもできます。今回はget_search_form()の使い方やオリジナルの検索フォームを作成して表示するためのsearchform.phpについて紹介します。

get_search_form()について

get_search_form()は、WordPressで現在有効になっているWordPressテーマのテーマディレクトリの直下にあるsearchform.phpをインクルードします。

get_search_form()の仕様

get_search_form($echo)
引数名 説明 デフォルト 必須
$echo 検索フォームのString出力 false

get_search_form()の使い方

get_search_form()の使い方は以下の通りです。

get_search_form()の引数をtrueにするとsearchform.phpで取得してきたものをString変数として返します。基本的にget_search_form()を使用するときにStringで返してほしいことはあまりないと思うので引数はなにも指定せずに使うことがメインにでしょう。

またget_search_form()を使っていて、有効になっているWordPressテーマのテーマディレクトリ直下にsearchform.phpがない場合はWordPress側で検索フォームを生成してページにインクルードされます。

serchform.phpについて

serchform.phpは、サイト内検索でつかうためのフォームを記述したテーマテンプレートになります。searchform.phpのサンプルは以下のような形です。

searchform.phpには、以下の条件が必要になります。

  • フォームのURLはホームページにGETでやる
  • テキストボックスのname属性はsにする
  • labelタグを必ず入れる

この条件がないとWordPressのサイト内検索が動かないです。

functions.phpに追加するやり方

searchform.phpを使う以外にもfunctions.phpの関数として検索フォームをフックして呼び出す方法があります。functions.phpに書くサンプルは以下のような形になります。

関数として検索フォームを使う場合もsearchform.phpと同じ条件が必要です。

まとめ

get_search_form()は、オリジナルの検索フォームやWordPress標準の検索フォームを表示してWordPressのサイト内検索に有効にするための関数です。テーマ内の好きなところでget_search_form()を使うことで簡単にオリジナルのサイト内検索が有効になるので使えるところで使いましょう。

参考URL

ピンバック

コメント

名前とEメールアドレスが必須です。

以下のHTMLタグが使用できます。 <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>