Непонятное поведение выборки массивов шаблонизатором Fenom

Вывожу сниппет только у определённых ресурсов которых 23 шт.
При выводе на всех 23-х ресурсах сниппет выводится и на других, не имеющих к этой выборке ресурсах.
Пример снизу: — выводит сниппет на ресурсе с id 45, хотя не должен
{if $_modx->resource.id | in : [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]}
тут сниппет
{/if}
Убираю из выборки 5 любых ресурсов (1,2,3,4,5 или 10,11,12,13,14 или 17,18,19,20,21) и всё работает как надо.

Т.е., когда в выборке участвуют более 18 ресурсов, появляется глюк. Когда до 18-ти — всё как часы.

В чём может быть проблема?
Илья
18 мая 2018, 07:35
modx.pro
826
0

Комментарии: 7

Илья
18 мая 2018, 10:45
0
Попробовал стандартный шаблонизатор:
[[*id:is=`1`:or:is=`2`:or:is=`3`:or:is=`4`:or:is=`5`:or:is=`6`:or:is=`7`:or:is=`8`:or:is=`9`:or:is=`10`:or:is=`11`:or:is=`12`:or:is=`13`:or:is=`14`:or:is=`15`:or:is=`16`:or:is=`17`:or:is=`18`:or:is=`19`:or:is=`20`:or:is=`21`:or:is=`22`:or:is=`23`:then=`Здесь сниппет`:else=``]]
Работает правильно, глюков нет!
    Наумов Алексей
    18 мая 2018, 11:09
    0
    in проверяет еще array_key_exists, м.б. все же попадает?..

      Stan Ezersky
      18 мая 2018, 11:30
      0
      А так
      {switch $_modx->resource.id}
      	{case '1','2','3','4','5','6'}
      		тут сниппет
      	{case default}
      {/switch}
      Будет глюк?
        Илья
        18 мая 2018, 11:40
        0
        Такой вариант всё правильно выводит.
          Stan Ezersky
          18 мая 2018, 11:48
          0
          Мне кажется, он и более корректен.

          Посмотрите в документации к Fenom на Github (ссылки нет под рукой).
        Алексей Ерохин
        18 мая 2018, 11:50
        0
        А если не модификатор?

        {if $_modx->resource.id  in list [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]}
        тут сниппет
        {/if}
          Илья
          18 мая 2018, 14:49
          0
          И этот вариант корректно работает.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          7