tgx:seo#
Применяет schema.org microdata-пресет к узлу и вложенным элементам.
Синтаксис#
<section tgx:seo="faq">...</section>
Пример 1: минимум (копипаст для старта)#
<section tgx:seo="faq">...</section>
Пример 2: реальный сценарий#
<article tgx:seo="article">
<header>Заголовок статьи</header>
<time datetime="2026-02-27">27.02.2026</time>
<img src="/img/post.jpg" alt="">
</article>
Пример 3: комбинированный сценарий#
<nav class="breadcrumbs" tgx:seo="breadcrumbs">
<ol>
<li><a href="/"><span>Главная</span></a><meta itemprop="position" content="1"></li>
<li><a href="/faq/"><span>FAQ</span></a><meta itemprop="position" content="2"></li>
</ol>
</nav>
Разбор#
Директива работает как декоратор микроразметки: выставляетitemscope/itemtype/itemprop по встроенному пресету. Для meta title/description/keywords используйте отдельный SEO-поток через tgx:set и return.*.
Когда использовать#
- Когда нужно улучшить видимость страницы в поиске и социальных сетях, а также структуру контента для роботов.
- Когда важно централизованно управлять meta-данными и микроразметкой без дублирования по шаблонам.
Поведение в runtime#
- Тип: пользовательская директива.
- В sandbox директива
tgx:seo: запрещена.
Параметры#
Необязательные#
title,description,keywords,canonical,robots,image,type,site_name,locale.
По умолчанию#
- Незаполненные поля берутся из структуры
page.seoи runtime-нормализации мета-тегов.
Типы#
- Все SEO-опции передаются как строки;
keywordsдопускает CSV.
Частые ошибки#
- Передавать в
tgx:seoпроизвольные парыkey=value(директива ожидает имя пресета) - Ожидать, что
tgx:seoзаполнит<title>/meta description— для этого используйтеreturn.*черезtgx:set
Проверка перед публикацией#
- В
tgx:seoуказан поддерживаемый пресет (article,product,faq,breadcrumbs,organization,contact,local-business, ...) - Проверено, что итоговый HTML содержит
itemscope/itemtype/itempropв нужных узлах