Использование чанков в файлах при работе с Fenom

Здравствуйте! Подскажите, пожалуйста, как правильно указывать имена чанков-шаблонов при вызове сниппета через Fenom, если чанки расположены в файлах? Подобный вызов не работает. Что тут не так?
{$_modx->runSnippet('TaggerGetTags', [
    'contexts' => $_modx->context['key'],
     'resources' => $_modx->resource['id'],
    'rowTpl' => '@FILE chunks/tagger/tagger_row.tpl',
    'outTpl' => '@FILE chunks/tagger/tagger_out.tpl',
    'target' => $_modx->config['tags_page'],
])}
Если чанки «tagger_row.tpl» и «tagger_out.tpl» созданы стандартным способом (хранятся в базе данных MODX), то в вызове сниппета просто указывается их имя. А как быть, если нужно эти чанки вынести в файлы?
Олег
15 сентября 2017, 11:47
884
0

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

Сергей Шлоков
15 сентября 2017, 16:38
0
А какая связь между сниппетом TaggerGetTags и pdoTools?
    Олег
    15 сентября 2017, 17:00
    0
    Вызов сниппета происходит через парсер pdoTools (синтаксис Fenom). Вопрос был по поводу передачи имени чанка в сниппет, в случае, когда чанк — это статический файл.
      Сергей Шлоков
      15 сентября 2017, 17:06
      +1
      Я понял, что мой вопрос вы не поняли. С чего вдруг сниппет TaggerGetTags должен уметь загружать чанки, указанные с использованием синтаксиса pdoTools? Теперь понятно?
        Олег
        15 сентября 2017, 17:15
        0
        Может есть способ вместо имени чанка передать его уже обработанный парсером INLINE результат?
man
man
15 сентября 2017, 16:52
0
путь верный?
Владимир
15 сентября 2017, 16:55
0
Используйте pdoResources + loadModels=tagger + class=TaggerTag И тогда с феномом все нормально будет работать.
itchief.ru/lessons/modx-revo/modx-tag-cloud
Олег
15 сентября 2017, 17:06
0
Данный вопрос касается не именно TaggerGetTags (он тут в качестве примера). Вопрос в том, как правильно передать в сниппет имя чанка, который является файлом на сервере и лежит в папке {core_path}/elements/chunks.
Например, как вызвать сниппет Formitб чтобы ему в качестве шаблона для отправки письма указать статический чанк? Сниппетов, которые используют мелкие чанки в качестве шаблонов для вывода данных — очень много разных. Но как им передавать такие чанки в параметрах, используя синтаксис Fenom?

«Используйте pdoResources + loadModels=tagger + class=TaggerTag» — это не относится к данному вопросу.
    Сергей Шлоков
    15 сентября 2017, 17:10
    +2
    Но как им передавать такие чанки в параметрах, используя синтаксис Fenom?
    Никак. Метод $modx->getChunk(), который используют все эти сниппеты, не умеет работать с файловыми чанками и не понимает данный синтаксис. Это умеет делать только метод $pdoTools->getChunk().

    П.С. Ну и функция chunk() из библиотеки modHelpers.
      Олег
      15 сентября 2017, 17:18
      0
      Тоесть, во всех этих сниппетах надо подменить объект $modx на $pdoTools? я правильно понимаю?
        Сергей Шлоков
        15 сентября 2017, 17:42
        +1
        До первого обновления.

        Можно сделать копию сниппета и в нем заменить метод.
          Олег
          15 сентября 2017, 19:58
          +1
          А как же тогда перевести систему на Fenom полностью? И чтобы вынести элементы в файлы (для редактирования через IDE)?
            Василий Наумкин
            16 сентября 2017, 02:16
            +2
            Можно примерно так:

            Если не понятно — это куча собственных файловых сниппетов, на все случаи жизни. MODX же у нас фреймворк, не так ли?