To group search results and display them in different blocks i want to filter them programmatically with facets.
I found a Solution, where the view is executed only with a new request object.
term = searchword
content = facet field
function theme_preprocess_views_view__search_view__page(&$vars) {
$view = Drupal\views\Views::getView('search_view_groups');
$view->setDisplay('block_groups');
$filters = [
'term' => $vars['view']->getRequest()->query->get('term'),
'content' => ['bereich:80']
];
$request = new Symfony\Component\HttpFoundation\Request($filters);
$view->setRequest($request);
$view->execute();
dump($view->result);
dump($view->getRequest());
}
The code works with params from the real request, but i can't change them in the hook. So i guess i use the wrong hook.
When should i run the filter? Which is the correct hook for that?
Setup:
Drupal: 8.3.5
facets: 1.x-dev
search_api: 1.3