2026年6月16日
2026年6月16日
WordPressの検索結果ページをカスタマイズする方法
はじめに
WordPressの検索結果ページは、ユーザーがサイト内で情報を探す重要な役割を果たします。デフォルトでは、シンプルなデザインと機能で構成されていますが、ユーザー体験を向上させたり、独自のブランドイメージを強調したりするためにカスタマイズが必要になることがあります。
症状・背景
このテーマが必要になる主な場面:
- サイトの設計に合わせて検索結果ページのデザインを統一したい場合
- 検索エンジン最適化(SEO)のために、検索結果ページの構造やレイアウトを調整したい場合
- 特定の投稿タイプだけを検索結果に表示したい場合
- ユーザー体験を向上させるために、検索結果ページの機能を拡張したい場合
手順・設定方法
ステップ1: 検索結果用テンプレートファイルの作成
# WordPressテーマディレクトリにあるsearch.phpファイルを作成または編集します。
nano themes/your-theme/search.php
# デフォルトの検索結果表示をカスタマイズします。例:投稿タイトルとエクスcerptだけを表示する場合
<?php while ( have_posts() ) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
<?php endwhile; ?>
ステップ2: 検索結果ページのCSSとスタイルをカスタマイズ
# CSSファイルに追加するクラスやIDを定義します。
nano themes/your-theme/assets/css/style.css
# 例:検索結果ページの背景色を変更
.search-results {
background-color: #f5f5dc;
}
# スタイルシートを読み込むPHPコードを編集します。
nano themes/your-theme/header.php
<!-- ヘッダーにスタイルシートを読み込みます -->
<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/assets/css/style.css">
ステップ3: カスタムフィールドの追加と使用
# 投稿ページにカスタムフィールドを追加します。
nano themes/your-theme/single.php
<?php $custom_field_value = get_post_meta($post->ID, 'custom-field-name', true); ?>
<h2><?php echo esc_html( $custom_field_value ); ?></h2>
# 検索結果ページでカスタムフィールドを使用します。
nano themes/your-theme/search.php
<?php while ( have_posts() ) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php echo get_post_meta(get_the_ID(), 'custom-field-name', true); ?></a></h2>
<?php endwhile; ?>
ステップ4: 検索結果ページの追加機能の実装
# 検索エンジン最適化(SEO)のために関連キーワードを表示します。
nano themes/your-theme/search.php
<?php $tags = wp_get_post_tags($post->ID);
if ($tags) {
echo '<p>タグ: ' . join(', ', array_map('esc_html', wp_list_pluck($tags, 'name'))) . '</p>';
}
?>
注意事項
- テンプレートファイルを編集する際は、必ずバックアップを取りましょう。
- カスタムフィールドの使用には注意が必要です。不要なデータが蓄積しないように管理しましょう。
- 検索エンジン最適化のためにも、関連キーワードやカテゴリ情報を表示すると良いでしょう。
- パフォーマンスに影響を与えないよう、大量のCSSとJavaScriptファイルは読み込むことを避けてください。
まとめ
1. テンプレートカスタマイズ: WordPressテーマ内のsearch.phpファイルを編集して検索結果ページのデザインや構造を調整します。
2. スタイルシート追加: CSSファイルに独自のスタイルを定義し、header.phpで読み込みます。
3. カスタムフィールド利用: 投稿ページにカスタムフィールドを追加して、検索結果ページでその情報を表示します。
4. 機能拡張: 検索結果ページの機能を拡張するために、タグや関連キーワードなどの情報を表示するなど、追加のコードを実装できます。
5. 注意事項: テンプレートファイルの編集は慎重に行い、パフォーマンスやセキュリティに影響を与えないようにします。
関連記事: