Сниппеты в MODX Evolution: способы вызова

Текущая заметка представляет из себя небольшую памятку с примерами по способам вызова сниппетов в CMS / CMF MODX Evolution.

Способы вызова сниппетов из шаблонов и чанков

В шаблонах, а также чанках сниппеты можно вызывать в двух режимах: с учетом кэширования вывода и без кэширования, не считая вызова с передачей произвольных входных параметров.

Пример вызова сниппета (Ditto) с кэшированием:

[[Ditto]]

Пример вызова сниппета (Ditto), исключая кэширование:

[!Ditto!]

Пример вызова сниппета (Ditto) с кэшированием и передачей некоторой группы входных параметров:

[[Ditto? &parents=`2` &display=`2` &total=`20` &removeChunk=`Comments` &tpl=`nl_sidebar`]]

Вызов сниппетов из сниппетов и иного кода на PHP

Как я уже упомянул, сниппеты в MODX Evolution можно вызывать не только из шаблонов или чанков, но и внутри произвольного программного кода на PHP (считайте из плагинов, модулей, в конце концов других сниппетов).

Вот кстати и один из таких примеров:

<?php
global $modx;
$params = array(
    'tpl' => 'WebLoginSideBar',
    'loginhomeid' => '[(site_start)]',
);
return $modx->runSnippet('WebLogin', $params);
?>

Здесь я из PHP кода вызываю существующий сниппет WebLogin и передаю ему несколько входных значений.

Опубликовано 3-09-2013 в 15:05


Комментариев к записи: 5

  1. Здравствуйте, скажите пожалуйста почему вот это
    [[Ditto? &parents=`2` &display=`2` &total=`20` &removeChunk=`Comments` &tpl=`nl_sidebar`]]
    у меня не работает? Висит: «записей не найдено». И не на что не реагирует. Чанка Comments в движке нет, вот этого nl_sidebar тоже не вижу.

    • Администратор:

      Входные параметры вы должны указывать в соответствии с вашими нуждами: вашими чанками и т.п.
      Статья эта не о сниппете Ditto, а о способах вызова сниппета (из программного кода на PHP, чанка, шаблона, с учетом кэша и без него).

      Не нужно бездумно копипастить код, не вчитываясь в него, не читая весь материал статьи, не читая официальной документации на официальных сайтах, и полагать, что это «будет работать стоит, мне только вставить туда-то текст».

      • Инга:

        Большое спасибо, что вы нашли время дать мне один из самых полезнейших советов в моей жизни. Алаверды.

        • Администратор:

          Вам спасибо за чтение мануалов. Чем грамотнее и адекватнее будут пользователи (в т.ч. заказчики), — тем легче с ними общаться.

  2. Инга:

    Дальше просто повеселю вас. Я ДЕЙСТВИТЕЛЬНО последовала вашему совету. Перечитала статью, и АП! Они таки сели у моих ног!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>











Свежие комментарии

  • krasnov8953: к записи Не работает как мне кажется строчка $newTvId = $ »
  • Dimanski: к записи ничего не понимаю. Ставлю ModX на хостинг r01.ru »
  • Дмитрий: к записи Спасибо! Очень выручили. С битриксом беда, а прав »
  • леонид: к записи как сделать что были в ряд? у меня получается по о »
  • Администратор: к записи Статический IP. »
  • Steel: к записи Администратор, вы данную проблему решили подключен »
  • Дмитрий: к записи Хотел узнать как прикрутить данное окно (http://re »

Последние твиты