\SearchWP\Rule
Indice
\SearchWP\Rule è responsabile della modellazione dei vincoli relativi ai risultati di ricerca (\SearchWP\Entry) che vengono presi in considerazione durante l'esecuzione di una \SearchWP\Query. Ad esempio:
- Escludi post nella categoria “Non categorizzato”
- Mostra solo aggiornamenti pubblicati negli ultimi 6 mesi
- ecc…
A differenza di db_where() in una \SearchWP\Source che si applica sempre, le \SearchWP\Rule sono visibili all'utente e vengono stabilite durante la configurazione dei Motori. Le \SearchWP\Rule vengono applicate sia durante l'indicizzazione che durante la ricerca.
Argomenti
Quando si istanzia una nuova \SearchWP\Rule è possibile fornire un array dei seguenti elementi:
name(string)- Un nome univoco. (default:
'') label(string)- Etichetta di visualizzazione. (default: valore di
name) options(false|array|callable)- Opzioni. (default:
false) option_values_ajax_tag(string)- Callback AJAX per recuperare le
optionsal volo. (default: valore di'') conditions(false|array)- Condizioni che possono essere applicate. (default:
false) - Quando
arrayi seguenti valori possono essere utilizzati:'=','!=','>','>=','<','<=','LIKE','NOT LIKE','IN','NOT IN','BETWEEN','NOT BETWEEN','EXISTS','NOT EXISTS' values(false|\SearchWP\Option[])- Quando le
optionssono disponibili, questi sono ivaluescorrispondenti tra cui scegliere. (default:false) - Quando
callablevengono passati i seguenti argomenti: $option(string) L'optionscelta.$search(string) Stringa di ricerca durante la ricerca.$include(string)optionsda utilizzare come limitatore durante la restituzione.application(array|callable)- L'applicazione di questa
\SearchWP\Rule. Restituisce un'istruzioneSQLpreparata che si applica, o unarraydi ID\SearchWP\Entryche soddisfano la\SearchWP\Rule. (default:null) - Quando
callableviene passato il seguente argomento (arraycon le seguenti chiavi): 'option'(string) L'optionscelta.'value'(string) Ilvaluescelto.'condition'(string) Laconditionscelta.
Metodi
Quando si lavora con \SearchWP\Rule ci sono una serie di metodi da considerare.
get_name()- Getter per nome.
get_label()- Getter per l'etichetta.
get_options()- Getter per le opzioni.
get_conditions()- Getter per le condizioni.
get_values( $option = '', $search = false, array $include = [] )- Getter per i valori.
get_application( array $settings )- Getter per l'applicazione.
get_settings()- Getter per le impostazioni (cioè come considerate da un
\SearchWP\Engine).

