SearchWP Documentation

Visualizza la guida all'installazione, sfoglia la Knowledge Base, scopri i numerosi hook di SearchWP

Definire l'ordinamento secondario per i risultati con pertinenza corrispondente

Ci saranno momenti in cui la pertinenza di più risultati di ricerca sarà esattamente la stessa, lasciando a MySQL il compito di decidere come ordinare tali risultati con pertinenza corrispondente.

Utilizzando un \SearchWP\Mod puoi invece specificare come desideri che vengano ordinati i risultati con pertinenza corrispondente.

All hooks should be added to your custom SearchWP Customizations Plugin.

<?php
// Add secondary sort to SearchWP results to sort matching
// relevance results by Title in ASC order.
add_filter( 'searchwp\query\mods', function( $mods, $query ) {
global $wpdb;
$mod = new \SearchWP\Mod();
$mod->set_local_table( $wpdb->posts );
$mod->on( 'ID', [ 'column' => 'id' ] );
$mod->order_by( function( $mod ) {
return $mod->get_local_table_alias() . '.post_title';
}, 'ASC', 99 );
$mods[] = $mod;
return $mods;
}, 30, 2 );

Utilizzando questo snippet stiamo dicendo a SearchWP di implementare un meccanismo di ordinamento secondario per ordinare i risultati con punteggi di pertinenza corrispondenti per il loro Titolo del post definito in ordine ASC.

Questa è una clausola di ordinamento secondaria a causa della priorità impostata nella chiamata al metodo order_by() che è 99. Quando si imposta una clausola order_by() in un \SearchWP\Mod ogni clausola viene emessa secondo la sua priorità in ordine ASC.

Esiste un ordinamento predefinito principale per tutte le query di SearchWP alla priorità 10 per ordinare per relevance in ordine DESC.

Crea Oggi Stesso una Migliore Esperienza di Ricerca WordPress

Non perdere mai più visitatori a causa di risultati di ricerca inutili. SearchWP rende la creazione della tua ricerca intelligente WordPress veloce e facile.

Get SearchWP Now
Icona di motori di ricerca multipli