Создал шаблон для компонента news который в режиме ajax фильтрует блоки статей по параметрам, при в клике фильтре на название тега на странице остаются только те статьи у которых есть данный тег. Фильтрация работает нормально.
Но при этом компонент не правильно работает если кликнуть на обычную ссылку!
У каждого из блоков есть ссылки - каждая ссылка ведет на эту же страницу, где расположен компонент news, но при этом в get запросе еще передается параметр статьи (например технология или направление деятельности).
При клике на ссылку пользователь должен заново перейти на эту страницу, где компонент news выведет ему статьи, но уже отфильтрованные по тегу который есть в GET запросе, например при клике на ссылку E-commerce пользователь перейдет на
эту же страницу но отображаться будут только статьи у которых есть тег E-сommerce
Если я перехожу по этой ссылке с другой страницы все работает нормально, но если я кликаю на блок новостей, который находится на этой же странице где расположен вызов компонента, переход не срабатывает, компонент принимает такой клик как ajax запрос отрабатывает неправильно (возвращает json вместо простого редиректа на свою же страницу).
В шаблоне компонента в файле result_modifier у меня есть проверка:
$request = Context::getCurrent()->getRequest();
if($request->isAjaxRequest()){
…
}
Но когда я перехожу по ссылке со страницы, где находится сам компонент то isAjaxRequest() срабатывает так как будто это Ajax запрос. В чем может быть причина, почему компонент воспринимает простой переход по ссылке как ajax запрос?