SearchWP Documentation

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

searchwp\query\logic\and\token_threshold

Da: 4.1.12

Controlla la soglia che SearchWP considera quando decide se eseguire un passaggio di logica AND.

La logica AND può essere problematica in termini di risorse e in alcuni casi comportare lunghi tempi di query.

A causa dell'algoritmo di pertinenza di SearchWP, saltare la logica AND perché ci sono troppi termini di ricerca *non degraderà la qualità dei risultati* poiché i risultati più pertinenti dovrebbero comunque apparire per primi. Il vantaggio della logica AND è che ci saranno meno risultati che contengono tutti i termini di ricerca, ma saltare la logica AND probabilmente non avrà un effetto drastico sui risultati complessivi.

Hai il pieno controllo su questa soglia e puoi personalizzare la soglia al runtime per soddisfare al meglio le tue esigenze.

Vedi anche: searchwp\query\logic\and

Parametri

Tipo Parametro Predefinito Da
Intero $threshold 5 4.1.12
Array $args
Chiave Tipo Valore
token Array Token utilizzati per la ricerca
query \SearchWP\Query Riferimento alla query
4.1.12

Esempi

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

Disabilita la soglia dei token della logica AND

<?php
// Disable SearchWP AND logic token threshold, allowing AND logic for all searches.
// @link https://searchwp.com/documentation/hooks/searchwp-query-logic-and-token_threshold/
add_filter( 'searchwp\query\logic\and\token_threshold', '__return_false' );

Come usare questo codice

Controlla la soglia dei token della logica AND

Personalizza la soglia della logica AND in base ai token di ricerca della ricerca corrente.

<?php
// Control SearchWP AND logic token threshold.
// @link https://searchwp.com/documentation/hooks/searchwp-query-logic-and-token_threshold/
add_filter( 'searchwp\query\logic\and\token_threshold', function( $threshold, $args ) {
// If the search contains 'coffee' allow up to 10 tokens for AND logic.
if ( in_array( 'coffee', $args['tokens'], true ) ) {
$threshold = 10;
}
// If the search contains 'soccer' disable AND logic token threshold.
if ( in_array( 'soccer', $args['tokens'], true ) ) {
$threshold = false;
}
return $threshold;
}, 20, 2 );

Come usare questo codice