\SearchWP\Rule
Sumário
\SearchWP\Rule é responsável por modelar as restrições sobre quais resultados de pesquisa (\SearchWP\Entry) são considerados ao executar uma \SearchWP\Query. Por exemplo:
- Excluir Posts na Categoria “Sem Categoria”
- Mostrar apenas Atualizações publicadas nos últimos 6 meses
- etc…
Em oposição a db_where() em um \SearchWP\Source que sempre se aplica, \SearchWP\Rules são voltados para o usuário e são estabelecidos ao configurar Motores. \SearchWP\Rules são aplicados tanto durante a indexação quanto na pesquisa.
Argumentos
Ao instanciar um novo \SearchWP\Rule, um array dos seguintes pode ser fornecido:
name(string)- Um nome único. (padrão:
'') label(string)- Rótulo de exibição. (padrão: valor de
name) options(false|array|callable)- Opções. (padrão:
false) option_values_ajax_tag(string)- Callback AJAX para buscar
optionsdinamicamente. (padrão: valor de'') conditions(false|array)- Condições que podem ser aplicadas. (padrão:
false) - Quando
arrayos seguintes valores podem ser usados:'=','!=','>','>=','<','<=','LIKE','NOT LIKE','IN','NOT IN','BETWEEN','NOT BETWEEN','EXISTS','NOT EXISTS' values(false|\SearchWP\Option[])- Quando
optionssão disponibilizadas, estes são osvaluescorrespondentes para escolher. (padrão:false) - Quando
callable, os seguintes argumentos são passados: $option(string) Aoptionescolhida.$search(string) String de pesquisa ao pesquisar.$include(string)optionsa serem usadas como limitador ao retornar.application(array|callable)- A aplicação desta
\SearchWP\Rule. Retorna uma instruçãoSQLpreparada que se aplica, ou umarrayde IDs de\SearchWP\Entryque satisfazem a\SearchWP\Rule. (padrão:null) - Quando
callableo seguinte argumento (arraycom as seguintes chaves) é passado: 'option'(string) Aoptionescolhida.'value'(string) Ovalueescolhido.'condition'(string) Aconditionescolhida.
Métodos
Ao trabalhar com \SearchWP\Rule, há uma série de métodos a serem considerados.
get_name()- Getter para o nome.
get_label()- Getter para o rótulo.
get_options()- Getter para opções.
get_conditions()- Getter para condições.
get_values( $option = '', $search = false, array $include = [] )- Getter para valores.
get_application( array $settings )- Getter para aplicação.
get_settings()- Getter para configurações (ou seja, como considerado por um
\SearchWP\Engine).

