SearchWP Documentation

Sehen Sie sich die Installationsanleitung an, durchsuchen Sie die Wissensdatenbank und erfahren Sie mehr über die vielen Hooks von SearchWP

Definieren Sie die sekundäre Sortierung für Ergebnisse mit übereinstimmender Relevanz

Es wird Zeiten geben, in denen die Relevanz mehrerer Suchergebnisse exakt gleich ist, sodass MySQL entscheiden muss, wie diese Ergebnisse mit gleicher Relevanz sortiert werden.

Mit einem \SearchWP\Mod können Sie stattdessen angeben, wie Ergebnisse mit gleicher Relevanz sortiert werden sollen.

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 );

Mit diesem Code-Snippet weisen wir SearchWP an, einen sekundären Sortierungsmechanismus zu implementieren, um Ergebnisse mit gleichen Relevanzwerten nach ihrem definierten Beitragstitel in ASC-Reihenfolge zu sortieren.

Dies ist eine sekundäre Sortierklausel aufgrund der Priorität, die in der order_by()-Methodenaufruf auf 99 gesetzt ist. Wenn eine order_by()-Klausel in einem \SearchWP\Mod gesetzt wird, wird jede Klausel entsprechend ihrer Priorität in ASC-Reihenfolge ausgegeben.

Es gibt eine standardmäßige Kernsortierung für alle SearchWP-Abfragen mit der Priorität 10, um nach relevance in DESC-Reihenfolge zu sortieren.

Erstellen Sie noch heute eine bessere WordPress-Sucherfahrung

Verlieren Sie nie wieder Besucher an unzureichende Suchergebnisse. SearchWP macht die Erstellung Ihrer eigenen intelligenten WordPress-Suche schnell und einfach.

Get SearchWP Now
Symbol für mehrere Suchmaschinen