webentwicklung-frage-antwort-db.com.de

Ich muss ein Suchformular erstellen, in dem Suchergebnisse aus bestimmten Kategorien angezeigt werden

Ich versuche, ein benutzerdefiniertes Suchfeld zu erstellen, in dem die Beiträge einer bestimmten Kategorie nach meiner Wahl angezeigt werden.

Jeder Begriff, der in das Suchfeld eingegeben wird, wendet die Suche in Daten einer Kategorie an. In diesen Daten werden nur Beiträge angezeigt, die mit den Suchbegriffen in der Kategorie übereinstimmen.

Ich habe beispielsweise eine Musikkategorie in meiner WordPress-Site und das reguläre Suchfeld zeigt Ergebnisse aus allen Kategorien an. In einem benutzerdefinierten Kategoriesuchfeld werden dann nur Ergebnisse aus Musikkategorien angezeigt.

Wenn Sie mir helfen können, antworten Sie bitte Shay.

1
Shay S

Sie können WP_query() verwenden, um die Ergebnisse Ihrer Suche einzugrenzen:

<?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