\SearchWP\Query
Tabla de contenidos
\SearchWP\Query es la clase responsable de ejecutar búsquedas utilizando un Engine existente.
Uso básico
Todo uso de \SearchWP\Query requiere al menos un parámetro; una consulta de búsqueda:
| <?php | |
| // @link https://searchwp.com/documentation/classes/searchwp-query/ | |
| $search = new \SearchWP\Query( 'coffee' ); | |
| $results = $search->results; // Array of results. |
Por defecto, $search->results será un array de objetos, con el siguiente formato:
stdClass Object
(
[id] => 1 // Result ID.
=> post.post // Result Source name.
[site] => 1 // Result site ID.
[relevance] => 150 // Result relevance weight.
)
Este resultado genérico stdClass proporciona lo mínimo necesario para recuperar información adicional sobre el resultado.
Argumentos
Se puede pasar un array de argumentos como segundo parámetro al instanciar \SearchWP\Query. Hay varios argumentos disponibles para personalizar los resultados devueltos.
| <?php | |
| // @link https://searchwp.com/documentation/classes/searchwp-query/ | |
| $search = new \SearchWP\Query( 'coffee', [ | |
| 'engine' => 'supplemental', | |
| 'per_page' => -1, | |
| 'fields' => 'all', | |
| ] ); | |
| $results = $search->results; // Array of results. |
Aquí está la lista completa de argumentos disponibles:
engine(string)- El nombre del Engine a utilizar para la búsqueda. (por defecto:
'default') mods(\SearchWP\Mod[])- Array de
\SearchWP\Mods a utilizar para la búsqueda. (por defecto:[]) site(integer[])- Array de IDs de sitios a utilizar para la búsqueda. (por defecto:
get_current_blog_id()) per_page(integer)- Cuántos resultados devolver por página. (por defecto:
get_option( 'posts_per_page' )) page(integer)- Qué página de resultados devolver. (predeterminado:
1) offset(integer)- Offset de los resultados a devolver. (por defecto:
0) fields(string)- Campos a devolver para cada resultado. (por defecto:
'default') - Acepta:
'default','ids','all', o'entries' 'default'Devuelveobject[]con propiedades:'id','source','site','relevance'(peso).'ids'Devuelvestring[]de IDs de resultados (Nota: La fuente no se proporciona, úselo solo cuando la fuente se pueda inferir).'all'Devuelve un array de objetos de Fuente nativos.'entries'Devuelve\SearchWP\Entry[]de resultados.
Métodos
get_results()- Devuelve los resultados.
get_raw_results()- Devuelve el conjunto de resultados predeterminado, sin la aplicación del argumento
fields. get_sql()- Devuelve la consulta SQL utilizada para encontrar resultados.
get_args()- Devuelve los argumentos utilizados para la búsqueda.
get_tokens()- Devuelve los
\SearchWP\Tokensutilizados en la consulta. get_keywords()- Devuelve la cadena de búsqueda original enviada.
get_errors()- Devuelve cualquier error generado. Útil para depurar.
get_suggested_search()- Devuelve la búsqueda sugerida si procede.
get_engine()- Devuelve el
\SearchWP\Engineen uso. run()- Vuelve a ejecutar la consulta de búsqueda utilizando las propiedades actuales.
Hooks
Hay una serie de ganchos disponibles para modificar aún más el comportamiento de \SearchWP\Query:
-
searchwp\query\logic\and\token_threshold -
searchwp\query\before -
searchwp\query\tokens\use_stems -
searchwp\query\tokens\limit -
searchwp\query\search_string -
searchwp\query -
searchwp\query\logic\phrase -
searchwp\query\logic\and -
searchwp\query\results -
searchwp\query\result\load_data\all_attributes -
searchwp\query\result\load_data -
searchwp\query\mods -
searchwp\query\do_source_db_where -
searchwp\query\per_page -
searchwp\query\args -
searchwp\query\output_suggested_search -
searchwp\query\logic\{$type}\strict -
searchwp\query\partial_matches\buoy -
searchwp\query\partial_matches\wildcard_after -
searchwp\query\partial_matches\wildcard_before -
searchwp\query\partial_matches\minimum_length -
searchwp\query\partial_matches\tokens -
searchwp\query\partial_matches\did_you_mean -
searchwp\query\partial_matches\force -
searchwp\query\partial_matches -
searchwp\query\partial_matches\fuzzy\minimum_length -
searchwp\query\partial_matches\fuzzy\threshold -
searchwp\query\partial_matches\fuzzy -
searchwp\query\partial_matches\fuzzy\force

