web-dev-qa-db-ja.com

特定のカテゴリの検索結果を表示する検索フォームを作成する必要があります

選択したカテゴリ別の投稿を表示するカスタム検索ボックスを作成しようとしています。

検索ボックスに送信されるすべての用語は、1つのカテゴリデータ内の検索に適用され、そのカテゴリ内の検索用語と一致する投稿のみが表示されます。

たとえば、WordPressサイトに音楽カテゴリがあり、通常の検索ボックスにすべてのカテゴリの結果が表示されている場合、カスタムカテゴリ検索ボックスには音楽カテゴリの結果のみが表示されます。

あなたが私を助けることができるならば、シェイと答えてください。

1
Shay S

検索結果を絞り込むためにWP_query()を使用できます。

<?php $args = array(
    's' => $_GET['s'],
    'post_type' => array( 'post', 'page' ),
    'post_status' => 'publish',
    'category_name' => 'music',
    'posts_per_page' => -1
);
$custom_search = new WP_Query( $args );
if ( $custom_search->have_posts() ) {
    while ( $custom_search->have_posts() ) : $custom_search->the_post(); ?>
         <div class="entry-content">
            <h2 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
            <?php the_excerpt(); ?>
        </div>

    <?php endwhile;

} else { ?>
    <h2>Your search didn't return any results.</h2>
<?php } ?>
1
Pim