carhop__dynamiques-theme__P.../search.php
Nonimart 8a057c15a9
All checks were successful
continuous-integration/drone/push Build is passing
FEATURE Refining search behaviour
2025-10-15 14:52:00 +02:00

91 lines
2.9 KiB
PHP

<?php get_header(); ?>
<div class="search-results-page ">
<section class="search-results-page__page-header">
<div class="inner">
<p class="search-results-page__page-header__subtitle title-small">Rechercher</p>
<h1 class="search-results-page__page-header__title">
<?php echo __("Résultats de recherche pour : ", "carhop") ?>
<span class="search-results-page__current-term">« <?php echo get_search_query(); ?> »</span>
</h1>
</div>
</section>
<div class="search-results-page__results-container">
<div class="search-results-page__results-counter">
<p class="post-count">
<span class="post-count__count"><?php echo $wp_query->found_posts; ?></span>
<span class="post-count__text">résultats</span>
</p>
</div>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="search-results-card">
<?php
$post_type = get_post_type();
$post_type_object = get_post_type_object($post_type);
$post_type_label = $post_type_object->labels->singular_name;
?>
<div class="content-meta">
<span class="content-meta__type content-meta__type--<?php echo $post_type; ?>"><?php echo $post_type_label; ?></span>
</div>
<!-- <span class="search-results-card__type"><?php echo esc_html($post_type_label); ?></span> -->
<h2 class="search-results-card__title">
<a href="<?php the_permalink(); ?>">
<?php
$title = get_the_title();
$search_query = get_search_query();
if (!empty($search_query)) {
$search_terms = explode(' ', $search_query);
foreach ($search_terms as $term) {
if (strlen(trim($term)) > 2) {
$term_escaped = preg_quote(trim($term), '/');
$title = preg_replace(
'/(' . $term_escaped . ')/i',
'<mark class="search-highlight">$1</mark>',
$title
);
}
}
}
echo $title;
?>
</a>
</h2>
<div class="search-results-page__search-snippet">
<?php echo get_search_snippet(get_the_ID(), get_search_query()); ?>
</div>
<?php get_template_part('template-parts/components/cta--go', null, array(
'url' => get_the_permalink(),
'label' => 'Lire la suite',
'target' => '_self',
)); ?>
</div>
<?php endwhile; ?>
<!-- Pagination -->
<div class="search-results-pagination">
<?php
the_posts_pagination(array(
'mid_size' => 2,
'prev_text' => __('« Précédent', 'homegrade-theme__texte-fonctionnel'),
'next_text' => __('Suivant »', 'homegrade-theme__texte-fonctionnel'),
));
?>
</div>
<?php else : ?>
<p class="no-results"><?php echo __('Aucun résultat trouvé pour votre recherche.', 'homegrade-theme__texte-fonctionnel'); ?></p>
<?php endif; ?>
</div>
</div>
<?php
get_footer();