WordPress

WordPrss★検索結果を表示するテンプレートをsearch.phpから任意の○○○.phpファイルにするには

投稿日:2021年1月29日 更新日:

WordPressの基本の検索ファイル

WordPressはテンプレート階層の優先順位の高い順番にファイルを探して、 最初に見つかったテンプレートファイルを使ってページを表示します。WordPressの検索機能で使われるファイルは下記のようになっています。

検索フォームを表示⇒「searchform.php」
検索結果を表示⇒「search.php」なければ「index.php」

基本的な検索機能は下の手順で設置できます。

searchform.phpを作成

<form method="get" id="searchform" action="<?php bloginfo('url'); ?>">
    <label for="s" class="assistive-text">検索</label>
    <input type="text" name="s" id="s" placeholder="検索" />
    <input type="submit" value="検索" />
</form>

検索フォームを呼び出す

<?php get_search_form(); ?> <!-- 検索窓の表示 -->

検索結果ページ

<?php if ( have_posts() ) : ?>
  
<h1><?php printf( __( 'Search Results for: %s', 'altitude' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
                    
        <?php while ( have_posts() ) : the_post(); ?>
                <?php get_template_part( 'content', 'search' ); ?>
        <?php endwhile; ?>
 
        <?php else : ?>
 
該当なし
 
        <?php endif; ?>

今回は、基本の検索機能とは別に絞り込み検索機能を追加して、検索結果を別デザインで表示させたいので、その方法を調べてみました。

検索結果を表示するテンプレートを任意の○○○.phpファイルに指定するには

今回は、基本の検索とは別の検索機能を追加するので、検索の結果は「search.php」とは別デザインのテンプレートファイル「○○○.php」に表示させたい。

方法は、<form>タグの「action:」に表示させたいページのURLを入れるだけ。

//検索フォームの<form>タグ内 
<form method="get" id="searchform" action="ここに表示させたいページのURLをいれる">

こんなに簡単なことだったとは。。。。
調べまくって、テストしまくって、最後の最後にたどり着いた答え。
コードの知識が浅いので、action は必ず action=”<?php bloginfo(‘url’); ?>”> と指定しなければ、WordPressでは上手く作動しないものだと思い込んでました。これで、サイト内検索をいろいろと追加していけそうです!

本サイトの内容に誤りや不正確な記述がある場合やサンプルに基づくいかなる結果も一切の責任を負いかねますので、あらかじめご了承ください。

-WordPress

執筆者:

関連記事

WordPress★「Search-Replace」で「The table “wp_ewwwio_queue” has no primary key.」っていうエラーがでたときの対処法

データベースの置換スクリプト「Search Replace」を実行する際に、事前テストでチェックするのがお約束。いつもはなにも問題がないのだけれど、「dry run」ボタンを押してテストすると、エラー …

WP★フロントページの画像の高さを変更する★Twenty Seventeenをカスタマイズ06

フロントページの画像の高さを変更する 1)管理者としてログインし、ダッシュボード左サイドのメニューから「外観」>「カスタマイズ」へ移動します。 2)メニューから「追加CSS」をクリックし、下記のコード …

WP★テーマ開発に便利!対応テンプレートファイルがすぐにわかるプラグイン

ブロックエディターについて調べているとき偶然に、現在閲覧中のページがどのテンプレートファイルに対応しているのかすぐにわかるプラグインがあることを発見。これってWordPressでテーマのカスタマイズや …

WordPress4.7.3★子テーマの作り方(Twenty Seventeen の場合)

  子テーマは、少なくとも 1つのディレクトリ(子テーマディレクトリ)と、2つのファイル(style.css と functions.php) から構成されます。以下を作成する必要があります。  子 …

WordPress|Twenty Nineteen トップページを固定ページにする

WordPressのダッシュボードから「外観」>「カスタマイズ」を選択。 「ホームページ設定」を選びます。 「ホームページ」と「投稿ページ」の2つに固定ページを割り当てます。 「+新規固定ページを追加 …

サイト制作・グラフィック制作をしているデザイナーです。制作で躓いたことの備忘録としてこのブログを始めました。
たくさんの検索結果から、実際に何度も何度も自分で試してみて、自分に合うなと思った方法やうまくいった方法をこのブログに書き留めています。
プログラム関係のことはもっぱらコピペ派。
自分でゴリゴリ書くことはできません。。。プログラムが分かる人がうらやましいです。
そんな私でもなんとかサイト制作ができるのはグーグル先生と貴重な情報をおしげもなく公開してくださっているたくさんの方々のおかげ。
有志のみなさまに日々感謝しつつ制作させていただいています。