get('suggested_url', '')) { return new RedirectResponse($suggested_url); } $search_term = $request->get('search', ''); if ($search_term) { if (is_array($search_term)) { $search_term = implode(' ', $search_term); } if (method_exists($view, 'setSearchTerm')) { $view->setSearchTerm(trim((string) $search_term)); } } if ($view instanceof SectionView) { // Pass search term to dynamic filter $dynamicFilter = $request->get('dynamic_filter', []); $dynamicFilter['search'] = $search_term; $request->query->set('dynamic_filter', $dynamicFilter); $view->setTemplate('search.tpl'); $view->setCategoryId(CategoryRequestHandler::SEARCH_CATEGORY_ID); $view->setFilterData($request->get('dynamic_filter', [])); if ($page = $request->query->get('page')) { $view->setPage((int) $page); } } else { $view->setRequest($request); } return $view->getResponse($request); } /** * @Route("/_shop/search-preload/") */ public function searchPreload(SearchPreloadView $preloadView): Response { return new JsonResponse( ['html' => $preloadView->getResponse()->getContent()] ); } }