Сніпети

    Що таке сніпети

    Сніпет — це код на мові PHP, який виводить результат своєї роботи в тому місці шаблону/чанку, де можна викликати цей сніпет. У сніпетах можна передавати будь-які параметри, в тому числі інші сніпети, тв-параметри чи чанки.

    Для чого потрібні сніпети

    Як правило, сніпети використовуються для виведення динамічно-змінного вмісту. Вони можуть використовуватись для створення меню, коментарів, стрічок новин, блогів або будь-якого іншого функціоналу, який можливий мовою php у зв'язці з API системи Evolution.

    Виклик сніпета

    Викликати сніпет можна в будь-якому місці ресурсу. Як правило, зазвичай це відбувається у шаблоні чи чанках. Вкрай не рекомендується викликати сніпети в полі content, особливо якщо це поле доступне для редагування менеджерам сайту.

    [!mySnippet? &param=`Value`!] - виклик, що не кешується
    [[mySnippet? &param=`Value`]] - кешований виклик

    Виклик через API

    $params => array('param' => 'Value');
    $modx->runSnippet('mySnippet', $params);

    Приклад сніпета

    Наприклад зробимо сніпет, що показує дату створення документа в читаному людиною форматі. Дата створення документа перебуває у системному ТВ-параметрі [*createdon*]. Параметр зберігає дату створення документа у форматі unixtime і виглядає його значення приблизно так: 1144904400.

    <?php
    $fullMonth = array(
        '1' => 'січня', 
        '2' => 'лютого',
        '3' => 'березня', 
        '4' => 'квітня', 
        '5' => 'травня',
        '6' => 'червня', 
        '7' => 'липня', 
        '8' => 'серпня', 
        '9' => 'вересня', 
        '10' => 'жовтня', 
        '11' => 'листопада', 
        '12' => 'грудня');
    $output = strftime('%d.%m.%Y',$date);
    $date = explode(".", $output);
    $month = (int)$date[1];
    $m = $fullMonth[$month];
    $out = $date[0] . ' ' . $m . ' ' . $date[2];
    return $out;

    Використання.

    Передамо сніпету ТВ-параметр [*createdon*]:

    [[ruDate? &date=`[*createdon*]`]]

    В результаті ми отримаємо щось подібне:

    21 травня 2018

    Популярні сніпети

    • DocLister - дозволяє виводити дані з будь-яких таблиць. Ідеальний для створення стрічок новин, блогів, каталогів товарів або послуг.
    • FormLister - сніпет для роботи з формами. Прекрасно підходить для форм надсилання повідомлень із сайту, авторизації-реєстрації та будь-якого можливого функціоналу, пов'язаного з особистим кабінетом.
    • phpthumb - сніпет для створення ескізів зображень, накладання водяних знаків та іншої роботи із зображеннями.
    • JotX - сніпет для створення коментарів.
    • Sitemap - генератор sitemap.xml.