Drupal: Hacer una búsqueda con Search API programaticamente
Esto lo hice en Drupal 7. No se en D8 como se hace pero calculo que será bastante similar. Ah y no importa si detrás hay una búsqueda por DB o por Solr.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
$index = search_api_index_load("machine_name_de_mi_indice"); $q = new SearchApiQuery($index); // Podemos añadir filtros como si de facetas se tratara $q->condition("field_type", "article", "="); // También podemos emular la búsqueda de una cadena $q->fields($index->getFulltextFields()); $q->keys("foo"); // Incluso limitar la cantidad de resultados $q->range(0, 5); // offset y limite. $results = $index->server()->search($q); |
Y ya solo queda iterar los resultados que están almacenados en $results[‘results’].