В нашей компании уже длительное время при разработке сайтов используются так называемые "некешируемые области" — штука, позволяющая исполнять код в любом месте шаблона компонента вне зависимости от кеша. Применяются они, в основном, в интернет-магазинах и корпоративных сайтах для следующих задач:
Отображение актуального количества товара на складе;
Изменение поведения блока "Добавить в корзину" в зависимости от наличия товара в корзине;
Какие-нибудь рейтинги-голосовалки у элементов каталога;
Реализация была довольно простенькая — глобальная переменная, несколько функций и всё. Скопировал файл, подключил и пользуйся. Но пришло время что-то менять! И я решил сделать модуль в маркетплейс для внутренних нужд. А потом ещё раз подумал — и решил сделать его доступным всем. Собственно, вот модуль "Некешируемая область", а тут небольшая документация с примером использования. Внимание. Модуль требует для работы PHP 5.3, хотя в свете выхода будущей версии битрикса это не страшно.
Пытался настроить по инструкции которая в документации, не работает, пробовал различные вариации бестолку, есть вопросы из за которых может не работать 1) " Формируем вёрстку блоков ссылок "Купить", "В корзину ...... " по второму пункту куда необходимо ставить код что бы работало 2) "В любом месте объявляем и регистрируем обработчик - либо функцию, либо метод класса, либо анонимную функцию" В любом месте это где, любым местом может быть init.php ?
Если есть файлы с готовым кодом, было бы очень клево их пощупать.
2) "В любом месте объявляем и регистрируем обработчик - либо функцию, либо метод класса, либо анонимную функцию" В любом месте это где, любым местом может быть init.php ?
Да. Ну и подключить сам модуль надо, естественно, иначе класс не найдётся (в документации дан пример, как лучше сделать).
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».