<![CDATA[ Выполняются два сниппета, хотя должен один - MODX Community Forums]]> https://forums.modx.com/thread/?thread=104966 <![CDATA[Выполняются два сниппета, хотя должен один]]> https://forums.modx.com/thread/104966/#dis-post-564414
Достался по наследству небольший портал (телефонный справочник) на MODX Revolution 2.7.1-pl.

Базовый шаблон:
[[$head]]
[[$header]]
[[*content]]
[[$script]]

На ресурсе в содержимом:
[[!+modx.user.id:isloggedin:is=`1`:then=`[[!getStaffTableAdmin]]`:else=`[[!getStaffTable]]`]]


проверка авторизации проходит корректно и выполняет нужный сниппет (выводит нужную таблицу из чанка в снипете), но решил сделать протоколирование в журнал в каждом снипете:
$modx->log(1, 'run snippet getStaffTableAdmin');
$modx->log(1, 'run snippet getStaffTable');

соответственно

и оказалось, что независмо от авторизации, в журнал попадает две записи, тоесть выполняются два снипета (но в итоге выполняется/выводится нужный).

Вопрос:
1. Я может чего не пониманию и это так и должно быть и у меня реализация неверно сделана. Всего лишь необходимо выводить одни данные анонимусам и другие авторизованным пользователям.
2. Вопрос бы не поднимался, если бы [getStaffTableAdmin] не выполняся дольше обычного и это стало заметно всем остальным анонимусам.
3. И простите если глупые вещи спрашиваю, недавно разбираюсь с MODX.

]]>
purgenjordan Mar 13, 2019, 12:27 PM https://forums.modx.com/thread/104966/#dis-post-564414
<![CDATA[Re: Выполняются два сниппета, хотя должен один]]> https://forums.modx.com/thread/104966/#dis-post-564437 Quote from: himurovi4 at Mar 14, 2019, 07:13 AM
А попробуйте вот так, оба будут логироваться?
Если нет, скажу почему))
 [[![[!+modx.user.id:isloggedin:is=`1`:then=`getStaffTableAdmin`:else=`getStaffTable`]]]]

действительно, отрабатывает как надо, согласно условию только один сниппет)

чувствую, что-то с кешем связанно...]]>
purgenjordan Mar 14, 2019, 07:35 AM https://forums.modx.com/thread/104966/#dis-post-564437
<![CDATA[Re: Выполняются два сниппета, хотя должен один]]> https://forums.modx.com/thread/104966/#dis-post-564435 Если нет, скажу почему))
 [[![[!+modx.user.id:isloggedin:is=`1`:then=`getStaffTableAdmin`:else=`getStaffTable`]]]]
]]>
himurovi4 Mar 14, 2019, 07:13 AM https://forums.modx.com/thread/104966/#dis-post-564435