• hagemaru

    (@hagemaru)


    ワードプレスの<?php get_search_form(); ?>というコードで検索機能が加えられますが、
    例えば、「東京」という言葉で検索した場合、検索結果では「東京」が含まれる記事が抽出されます。
    この時、カテゴリーなどに関係なく「東京」が含まれている記事が全て表示されます。
    そこで、表示された記事が、どのカテゴリーのものなのか、ということが分かるようにすることは出来るでしょうか?

    様々なサイトを見てみると、絞り込みなども出来るようですが、
    私の場合は、絞り込むのではなく、あえてキーワードに関連する記事を全て表示させた上で、
    どの記事がどのカテゴリーのものなのか、ということが分かるようにしたいと考えています。

    出来る方法など、わかる人がいましたら、ぜひ教えて下さい。
    よろしくお願いします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • 検索結果で

    ——
    検索結果: 東京

    [カテゴリー1]記事のタイトル
    [カテゴリー2]記事のタイトル
    ・・・
    ——

    という風にしたいという解釈でよいでしょうか?
    であれば、loop.phpか、loop-search.php(get_template_part()を使用)で記述を書けば可能だと思います。

    <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
    <div id="serchBox">
    <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
    <?php if(has_category()) {
    	//投稿がカテゴリーに属しているときはカテゴリーを出力する
    	$post_cat = get_the_category();
    	$post_cat = $post_cat[0]->slug; //スラッグ名を出力
    	echo '<p>'.$post_cat.'</p>';
    }; ?>
    </div>
    <?php endwhile; ?>

    カテゴリーを持っているとき(固定ページなどの場合は除きたいので)だけ、カテゴリーを出力します。
    ただし、上記のコードは投稿のカテゴリーがひとつだけの場合なので、
    親子関係になっているカテゴリーの場合などはもう少しコードの書き換えが必要です。

    参考になれば幸いです。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「検索結果で表示された記事のカテゴリーが分かるようにしたい」には新たに返信することはできません。