[Fenom] Динамические плейсхолдеры (и var-переменные) срабатывают только при первой загрузке страницы (когда она еще не закэширована)
Задаю в динамическом сниппете {'!get_country' | snippet} плейсхолдер с кодом страны:
Сниппет:
Но при следующей загрузке страницы условие не срабатывает и при все том же коде 'RU' выдает «else» или наоборот… Странно как-то очень. Что с этим делать?
Может нужно каким-то образом (каким?) выводить и проверять некэшируемый плейсхолдер? Только как его сделать?
Сниппет:
$modx->setPlaceholder('country_code', 'RU');Вызываю данный сниппет на странице:{'!get_country' | snippet}
{if $_modx->getPlaceholder('country_code') == 'RU'}
Russia | {$_modx->getPlaceholder('country_code')}
{else}
Other | {$_modx->getPlaceholder('country_code')}
{/if}При первой загрузке страницы (пока ее нет в кэше) все срабатывает как положено.Но при следующей загрузке страницы условие не срабатывает и при все том же коде 'RU' выдает «else» или наоборот… Странно как-то очень. Что с этим делать?
Может нужно каким-то образом (каким?) выводить и проверять некэшируемый плейсхолдер? Только как его сделать?
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Задаю внутри сниппета плейсхолдер
Вывожу его на странице:
И у меня постоянно выводится, что «ttt = a» (вместо «ttt else»),
хотя я задаю значение плейсхолдера «b», а не «a».
Видимо условие закэшировалось вместе с шаблоном с тем значением, которое попало в кэш первый раз.
Нужен некэшируемый вывод плейсхолдера, как в стандартном MODX: [[!+placeholder]]
Шаблон:
Чанк head:
Чанк footer:
Выводится " | | ". А при первой загрузке страницы все норм.