Оглавление

Очень часто при работе с MODx у новичков возникают сложности в понимании того, что такое тег или плейсхолдер. Как и когда их использовать. Для начала пройдите и прочитайте что такое тег ресурса, а что такое тег плейсхолдера. Помимо тегов ресурса и тегов плейсхолдеров, есть и другие теги, например, теги системных настроек, теги словарей, теги чанков, теги сниппетов и т. д. Очень важно понимать и знать, когда и какой тег использовать при построении шаблонов.

Теги  ресурса

Стандартный набор тегов ресурса:

Тег Тип Описание Пример использования
[[*id]] int Идентификатор ресурса страницы (устанавливается при создании страницы автоматически).

Часто используется вместе с синтаксисом ссылки, например:

<a href="[[~[[*id]]]]">Ссылка на страницу</a>

[[*pagetitle]] text Название страницы. <title>[[*pagetitle]]</title>
[[*longtitle]] text Расширенный заголовок страницы. <h1>[[*longtitle]]</h1>
[[*description]] text Описание страницы <meta name="description" content="[[*description]]"/>
[[*introtext]] text Вводное текстовое поле.

Часто используется снипеттами для обобщения постов, например: 

<div id="summary">[[*introtext]]</div>

[[*content]] text Содержание ресурса. <body>[[*content]]</body>
[[*menutitle]] text Используется как название страницы в меню. Сниппеты pdoMenu или pdoCrumbs используют это поле в своей шаблонизации.
[[*menuindex]] int Индекс меню.
[[*link_attributes]] text Атрибуты ссылки. Вставляются автоматически при использовании тега[[~123]].
[[*alias]] text Псевдоним ресурса.

Используется для обращения к ресурса через url, например:

https://examle.com/псевдоним

Должны быть включены дружественные URL.

[[*uri]] string URI страницы.

[[*uri_override]] int 0/1 При значении true, позволяет заморозить URI страницы.

[[*template]] int Идентификационный номер шаблона ресурса.
[[*parent]] int Идентификационный номер родительского ресурса.
[[*createdon]] date Дата создания ресурса. [[*createdon:strtotime:date=`%a %b %e, %Y`]]
[[*createdby]] int Идентификационный номер пользователя, который создал ресурс. Часто используется для определения автора ресурса (новости, блоги и т. д.).
[[*deleted]] int 0/1 Указывает удален ли ресурс или нет.
[[*deletedon]] date Дата удаления ресурса. [[*deletedon:strtotime:date=`%a %b %e, %Y`]]
[[*deletedby]] int Идентификационный номер пользователя, который удалил ресурс.
[[*editedon]] date Дата редактирования ресурса. [[*editedon:strtotime:date=`%a %b %e, %Y`]]
[[*editedby]] int Идентификационный номер пользователя, который отредактировал ресурс.
[[*pub_date]] date Дата автоматической публикации ресурса.
[[*unpub_date]] date Дата автоматической отмены публикации ресурса.
[[*published]] int 0/1 Указывает опубликован ресурс или нет.
[[*publishedon]] date Дата публикации ресурса. [[*publishedon:strtotime:date=`%a %b %e, %Y`]]
[[*publishedby]] int Идентификационный номер пользователя, который опубликовал ресурс.
[[*cacheable]] int 0/1 Указывает кэшировать ли ресурс, после первого обращения к нему или нет.
[[*searchable]] int 0/1 Указывает возможность поиска по содержимому ресурса. Удобно использовать для запрета индексации через условие или через в сниппеты.
[[*class_key]] int Ключ класса ресурса. Например — modDocument.
[[*content_type]] int Идентификационный номер типа содержимого ресурса.
[[*hidemenu]] int 0/1 Указывает скрыть ресурс из меню или нет. Этот атрибут используется многими сниппетами, например, pdoMenu, Wayfinder.
[[*isfolder]] int 0/1 Указывает является ли ресурс контейнером или нет.
[[*richtext]] int 0/1 Указывает использовать ли в ресурсе WYSIWYG редактор или нет.

Теги системных настроек

Тег Описание Пример использования
[[++site_url]] Содержит URL сайта.

Данная настройка задается в конфигурационном файле и не может быть изменена через системные настройки.

<base href="[[++site_url]]" />
[[++site_name]] Название сайта. <title>[[++site_name]] | [[*pagetitle]]</title>
[[++site_start]] Содержит идентификационный номер страницы, которая явлется «Домашней (Главной)» страницей сайта. <a class="logo" href="[[~[[++site_start]]]]">Главная</a>

Другие теги

Тег Описание Пример использования
[[$chunk]] Данный тег ссылается на чанк по его имени.
[[~link]] Используйте этот синтаксис для создания ссылок на страницы, ссылаясь на их уникальный идентификатор (отображается в скобках рядом с именем страницы в дереве ресурсов). Эти ссылки не прервутся, если страницы будут перемещены или переименованы. Вы можете изменить сгенерированную схему ссылок с помощью системной настройки link_tag_scheme. <a class="logo" href="[[~1]]">Главная</a>
[[%translated_message]] Тег для вывода лексикона. [[!%setting_emailsender? &topic=`setting` &namespace=`core` &language=`en`]]