Webサイトのお困りごとはこちらへ

SWELLで検索結果の件数を表示するカスタマイズ手順

ハシビィくん

SWELLで検索機能を使うと該当記事がズラッと表示されるんすけど、何記事あるのかわからないのが不便っす!もっと分かりやすくならないっすか?

カピーさん

SWELLの標準では確かに検索結果の件数は表示されないな。でも簡単なコードで実装できるからサクッと教えるぞ!

目次

SWELLは検索結果のみで「件数」は不明

SWELLで投稿に対して検索すると、ヒットすれば記事カードがズラッと表示されますが、「何件の記事があるんだろう?」というのは、数えるしかありません。

そこで今回は検索結果として、ヒットした記事数を表示するカスタマイズを紹介します。

応用すれば、モデルハウスなどであれば展示イベントの件数や、あるガジェットのレビュー記事の件数など幅広いサイトで利用できるカスタマイズになります。

search.phpにコードを追加

<?php
if ( ! defined( 'ABSPATH' ) ) exit;
get_header();

// リストタイプ
$list_type = apply_filters( 'swell_post_list_type_on_search', SWELL_Theme::$list_type );

// 検索結果の件数を取得
$search_count = $wp_query->found_posts;
$search_title = '検索にマッチした記事:' . $search_count . '件';
?>
<main id="main_content" class="l-mainContent l-article">
	<div class="l-mainContent__inner">
		<h1 class="c-pageTitle" data-style="b_bottom"><span class="c-pageTitle__inner"><?php echo esc_html($search_title); ?></span></h1>
		<div class="p-searchContent u-mt-40">
			<?php
				// 新着投稿一覧 ( Main loop )
				SWELL_Theme::get_parts( 'parts/post_list/loop_main', ['type' => $list_type ] );
				SWELL_Theme::get_parts( 'parts/post_list/item/pagination' );
			?>
		</div>
	</div>
</main>
<?php get_footer(); ?>

こちらのコードをコピーしておいてください。次の「子テーマにアップロード」で使います。

子テーマ(swell_child)にアップロード

FTPを扱えるのであれば、SWELL-Childに先ほどのsearch.phpをアップロードでOKです。

カピーさん

FTP?っていう人は下の方法でも対応可能だぞ!

STEP
『File Manager』というプラグインを追加
WordPress.org 日本語
File Manager ファイルマネージャでは、ファイルやフォルダの編集、削除、アップロード、ダウンロード、コピー、貼り付けを行うことができます。
STEP
WP File Managerに遷移

WordPressの管理画面(ダッシュボード)に『File Manager』のアイコンが表示されますので、クリックすると「WP File Manager」というページに遷移します。

STEP
子テーマ(swell_child)にsearch.phpをドラッグ&ドロップ
STEP
子テーマのsearch.phpにコピペしたコードを貼り付け
<?php
if ( ! defined( 'ABSPATH' ) ) exit;
get_header();

// リストタイプ
$list_type = apply_filters( 'swell_post_list_type_on_search', SWELL_Theme::$list_type );

// 検索結果の件数を取得
$search_count = $wp_query->found_posts;
$search_title = '検索にマッチした記事:' . $search_count . '件';
?>
<main id="main_content" class="l-mainContent l-article">
	<div class="l-mainContent__inner">
		<h1 class="c-pageTitle" data-style="b_bottom"><span class="c-pageTitle__inner"><?php echo esc_html($search_title); ?></span></h1>
		<div class="p-searchContent u-mt-40">
			<?php
				// 新着投稿一覧 ( Main loop )
				SWELL_Theme::get_parts( 'parts/post_list/loop_main', ['type' => $list_type ] );
				SWELL_Theme::get_parts( 'parts/post_list/item/pagination' );
			?>
		</div>
	</div>
</main>
<?php get_footer(); ?>

先ほど紹介したコードと同じです。貼り付けたらファイルを更新で完了。

実装後に確認してみましょう。

検索結果が表示されている

無事件数が表示されています。表示文言を変更したい場合は、$search_title部分を任意で変更してください。

まとめ:SWELLで検索結果の件数を表示するカスタマイズ手順

ブログ向けに作成されたテーマであれば、機能として備わっていることの多い「検索結果数表示」ですが、SWELLなら簡単に実装することができます。

冒頭にも述べましたが、幅広いサイトで活用できますので、SWELLユーザーの方はぜひお使いになることで、ユーザーに優しいサイト運営にお役立てください。

SWELLで検索結果の件数を表示するカスタマイズ手順
  • SWELL標準の検索結果ページでは記事数が表示されないため、何件ヒットしたのかが分かりにくい。
  • 子テーマのsearch.php$wp_query->found_postsを使ったコードを追加すれば、検索結果の件数を表示できる。
  • 表示文言は$search_titleの部分を変更することで、サイト内容に合わせて自由にカスタマイズできる。
この記事をシェアする

コメント(承認制)

コメントする

目次