Ajax в двойке $is_ajax

Раскажите подробнее

 
Посетитель
small user social cms
МедальПочетный донор проектаПочетный донор проекта
Сообщений: 611
Расскажите, пожалуйста подробнее в шаблоне нашел такую переменную $is_ajax = $this->controller->request->isAjax();
Это можно теперь любой контент вызвать через AJAX или нет?
Редактировалось: 2 раз (Последний: 16 сентября 2014 в 23:15)
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1164
Это в контроллере так проверить можно что запрос пришел через аякс, а дальше обработать его. Например, если не аякс запрос, то показываем страницу 404... или выполняем что хотели. =)
Реклама
cms
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4379
Если передан в запросе заголовок HTTP_X_REQUESTED_WITH и он равен XMLHttpRequest, то $this->controller->request->isAjax() вернет true.
Иными словами, если вы запрашиваете страницу через штатные аякс запросы jQuery ($.ajax, $.post и т.п.) или иным образом передадите данный заголовок, то система пометит контекст запроса как аякс.
Кроме этого, если вы запросите любой url сайта при помощи аякс запроса, то выведется html результат работы вызванного контроллера и экшена, а не страница сайта целиком.
jorgovich:
Это можно теперь любой контент вызвать через AJAX или нет?
Вы и раньше могли это делать.
Редактировалось: 1 раз (Последний: 16 сентября 2014 в 23:31)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальПочетный донор проектаПочетный донор проекта
Сообщений: 611
В принципе частично понял с аяксом, вопрос остался только с меню, можно ли вывести меню в таком виде: отображать только один активный пункт меню, а остальные пункты меню подгружать через аякс? Вопрос не принципиальный, так для саморазвития больше, решение у меня есть другими методами, просто интересно..
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1164
jorgovich:
...можно ли вывести меню в таком виде: отображать только один активный пункт меню, а остальные пункты меню подгружать через аякс?
Можно конечно, но не нужно =)
Смысл имеет выводить таким образом контент принципиально не нужный на странице, но к которому пользователь может обратиться в редких случаях (например подгружать какие-то данные о пользователе при клике на его аватарку в разделе где таких аватарок много) или подгружать основной контент страницы по мере его надобности (например при прокрутке страницы вниз). А заморачиваться с аяксом ради нескольких строк меню не стоит, они и так прогрузятся не создав заметной нагрузки ;)
Посетитель
small user social cms
Медаль
Сообщений: 779
Актуально подобное с точки зрения СЕО для каталогов например

Есть раздел Игрушки и Велосипеды,
зайдя в раздел Велосипеды в его меню должны быть только ссылки на велосипеды
и одна активная ссылка на общий раздел игрушки,

а подкатегории игрушек уже должны грузиться по клику аяксом.

Таким образом оптимизируем ссылочное ядро, скрывая не релевантные ссылки в меню.
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.