17 февр. 2016 г., 17:33
eventsCalendar2 при смене месяца загружает весь код страницы с каледарём
Доброго времени суток! Я использую modxSDK, modxSite, modxSmarty. Для вывода календаря событий я использую eventsCalendar2. Я вывожу календарь событий на всех страницах. Для этого в основном шаблоне (layout.tpl) я в самом верху вызываю сниппет eventsCalendar2 некэшируемым, результат помещаю в переменную и вывожу её в нужном месте:
{snippet name="eventsCalendar2" params="parents=`16`&dateSource=`eventDate`&tplHead=`calHead`&tplEvent=`calEvent`®Css=`0`" assign="evCal" nocache} ... {$evCal}
Все остальные шаблоны наследуют основной шаблон шаблон. На главной странице месяцы переключаются нормально, а на остальных — одна и та же беда: переключаем месяц — через ajax загружается весь контент страницы с календарём.
Я уже видел один топик по этому вопросу: modx.pro/help/6356/. Тут проблема с шаблонизатором Fenom.
Как я понял, суть проблемы такова: «И всё отлично работает, за исключение того, что при компиляции шаблона Fenom он прописывает вывод всех данных не в переменную, которую покажет в конце, а выводит их сразу через echo. Соотвественно, в ответ ajax запроса попадают все сниппеты, обработанные до eventsCalendar2 — и ты видишь их на странице.»
Т.е. в ответ ajax-запроса попадают результаты всех сниппетов, вызванных до eventsCalendar. А как сделать так, чтобы сниппет eventsCalendar вызывался первым в каждом шаблоне?