Cela arrive fréquemment lorsque l’on effectue une recherche : on ne comprends pas pourquoi un article remonte plutôt qu’un autre. Le meilleur critère de pertinence reste le titre pour pas mal de webmasters. J’ai moi même eu la problématique lorsque les recherches en back-office dans un champ ACF me sortaient tout et n’importe quoi.
Hook posts_search
Copier coller le code suivant dans le functions.php de votre thème ;
function recherche_par_titre_uniquement( $search, $wp_query ) { global $wpdb; if ( empty( $search ) ) return $search; $q = $wp_query->query_vars; $n = ! empty( $q['exact'] ) ? '' : '%'; $search = $searchand = ''; foreach ( (array) $q['search_terms'] as $term ) { $term = esc_sql( like_escape( $term ) ); $search .= "{$searchand}($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')"; $searchand = ' AND '; } if ( ! empty( $search ) ) { $search = " AND ({$search}) "; if ( ! is_user_logged_in() ) $search .= " AND ($wpdb->posts.post_password = '') "; } return $search; } add_filter( 'posts_search', 'recherche_par_titre_uniquement', 500, 2 );