#Шорткоды
Шорткод — метка в фигурных скобках, вместо которой при отдаче страницы подставляется что-то настоящее: блок, поле записи, значение настройки, картинка.
Шорткоды работают везде, где есть разметка: в содержимом страницы, в виде модуля, в шапке и подвале.
#Главное правило
Всё, что не подставилось, вычищается. Забытая или ошибочная метка не вылезет к посетителю — но и не сработает. Поэтому ошибка в шорткоде выглядит как пустое место, а не как сообщение.
Отсюда способ отладки: пусто там, где ждали блок, — значит имя не совпало. Проверяйте имя в разделе Модули, а имя поля — в Справочниках.
#Пять семейств меток
| Метка | Что подставляет | Где работает |
|---|---|---|
{module.имя} | целый блок | везде |
{module.имя.поле} | поле записи | внутри вида этого модуля |
{PFM.поле} | поле текущей страницы | везде на странице |
{setting.имя} | значение из «Настройки сайта» | везде |
{image.номер} | картинку из файлов сайта | везде |
Плюс служебные: {item}, {pager}, {formguard},
{before_head_close_code}, {after_body_open_code}.
#Страницы раздела
- Вызов блока и условия —
limit,orderBy, отбор по полю, постраничность. - Поля записей —
{module.…},{PFM.…}и их дополнительные виды. - Справочник всех меток — таблица целиком.
#Быстрый пример
Страница «Услуги» с шестью работами и формой:
<h2>Наши работы</h2>
{module.portfolio:limit=6&orderBy=id&order=desc}
<h2>Оставьте заявку</h2>
{module.form_block:code=zayavka}Вёрстка карточки внутри вида модуля portfolio:
<article class="work">
<img src="{module.portfolio.kartinka}" alt="{module.portfolio.zagolovok}">
<h3>{module.portfolio.zagolovok}</h3>
<p>{module.portfolio.cena}</p>
</article>Шапка с контактами из настроек:
<a href="tel:{setting.phone}">{setting.phone}</a>
<a href="mailto:{setting.email}">{setting.email}</a>