Настройка Metatag и Schema.org — это невидимый фундамент вашего сайта. Почему это важно для бизнеса?
При заказе сайта легко оценить дизайн, удобство кнопок или скорость загрузки — всё это видно глазами. Но за красивой витриной скрывается «невидимая» техническая работа: настройка метатегов, канонических ссылок и микроразметки Schema.org. Многие владельцы бизнеса сомневаются, стоит ли платить за то, чего не видно на экране.
Представьте большой супермаркет, где со всех товаров сняли ценники и таблички отделов. Покупатель заходит, не может быстро сориентироваться и уходит к конкурентам. Точно так же без разметки поисковые роботы и нейросети (Яндекс Нейро, Google AI, ChatGPT) видят ваш сайт как сплошной поток текста: они не понимают, где цена товара, где отзыв, где автор статьи, а где технический дубль.
Правильная настройка модулей Metatag и Schema.org в Drupal 10 и 11 — это те самые ценники и навигация для поисковиков. Она убирает дубли в коде, корректно передаёт данные в соцсети (Open Graph) и выводит стоимость, статус наличия и ответы на частые вопросы прямо в выдаче Яндекса и Google, повышая кликабельность (CTR). Это не «невидимая трата», а страховка ваших вложений в разработку и продвижение.
Полное руководство по настройке метатегов и микроразметки в Drupal 10 и 11
Главный секрет безошибочной работы в Drupal — жёсткая изоляция сущностей. Если задать разметку статьи в глобальных настройках, она неизбежно «пробьёт» главную страницу, контакты и сервисные разделы, создав конфликт типов. Ниже — пошаговая инструкция по настройке всех разделов сайта, включая хлебные крошки и блоки «Вопрос-Ответ».
- Как работает наследование в CMS Drupal (Золотое правило)
- Базовая настройка: Глобально (Global)
- Главная страница (Front page)
- Статьи, публикации и новости (Content: Статья)
- Обычные страницы, услуги и сервисы (Content: Страница)
- Товары и платные услуги (Schema.org: Product)
- Рубрики, теги и каталоги (Таксономия и Views)
- Настройка хлебных крошек (Schema.org: BreadcrumbList)
- Настройка блока «Вопрос-Ответ» (Schema.org: FAQPage)
- Настройка мультиязычных сайтов (Языковые версии и hreflang)
- Оптимизация под нейросети и ИИ-поиск (GEO)
- Финальная проверка и отладка
1. Как работает наследование в CMS Drupal (Золотое правило)
Модуль Metatag собирает настройки снизу вверх по принципу матрёшки:
- Глобально (Global) — применяется ко всем без исключения страницам сайта.
- Содержимое (Content) — применяется ко всем материалам (нодам).
Конкретный тип материала (Content: Статья / Страница) — перекрывает общие настройки материалов.
Главная страница (Front page) — имеет наивысший приоритет, но не стирает заполненные поля с нижних уровней, если они не переопределены явно.
Золотое правило: В разделах Глобально и Содержимое никогда не заполняйте специфические вкладки Schema.org (Article, WebPage, FAQPage, Product). Оставляйте их только в шаблонах конкретных типов страниц.
2. Базовая настройка: Глобально (Global)

Перейдите в Конфигурация -> Поиск и метаданные -> Метатеги (/admin/config/search/metatag) и откройте шаблон Глобально. Здесь оставляем только базовые параметры, безопасные для любой страницы (даже для страницы 404 или входа в систему).
Основные теги:
- Title: [current-page:title] | [site:name]
Расширенные (Advanced):
- Canonical URL: [current-page:url:absolute] (всегда используйте суффикс :absolute, чтобы ссылка начиналась с https://).
- Robots: index, follow
Open Graph:
- Название сайта (og:site_name): [site:name]
- Тип материала (og:type): website
- URL страницы (og:url): [current-page:url:absolute]
- Заголовок (og:title): [current-page:title]
- Image (og:image): Прямая ссылка на общий логотип или баннер сайта (например, https://ваш_домен). Сработает как запасная картинка при репостах, если у страницы нет своей.
- Image type: image/jpeg (или image/png — строго по международному стандарту MIME, не используйте image/jpg).
Schema.org:
- Все вкладки здесь должны оставаться пустыми.
3. Главная страница (Front page)

Главная страница в Drupal часто является обычной нодой (например, /node/1). Чтобы она не прикидывалась статьёй и не отдавала соцсетям внутренний системный адрес, её параметры нужно зафиксировать жёстко.
Основные теги:
- Title: Уникальный SEO-заголовок главной страницы без токенов (например: Интернет-магазин мебели и декора | Название бренда).
- Description: Уникальное описание проекта до 160 символов.
Расширенные:
- Canonical URL: Жёстко впишите чистый адрес руками: https://ваш_домен (без токенов, чтобы избежать подстановки /node/1; исключение — мультиязычные сайты, см. раздел 10).
Open Graph:
- Тип материала (og:type): website
- URL страницы (og:url): https://ваш_домен
- Заголовок (og:title): Заголовок главной страницы.
- Описание (og:description): Описание главной страницы.
Schema.org: WebSite (Паспорт всего сайта):
- @type: WebSite
- @id: https://ваш_домен
- Name: Название вашего ресурса.
- Url: https://ваш_домен
- In language: ru
Schema.org: Organization (Владелец и бренд):
- @type: Organization
- Name: Название компании или бренда.
- Url: https://ваш_домен
- Logo: Прямая ссылка на логотип сайта с указанием ширины и высоты.
Блокировка статьи:
- Вкладка Schema.org: Article должна быть пустой, а в поле @type выбрано Ignore (если такой пункт есть в списке).
4. Статьи, публикации и новости (Content: Статья)
Откройте шаблон вашего информационного или блогового типа материала. Здесь используются только динамические токены ноды ([node:...]). Например:

Основные теги:
- Description: [node:summary] (используйте анонс, а не [node:body], чтобы в описание не попадали HTML-теги, эмодзи и технические хвосты из конца текста).
Open Graph:
- Тип материала (og:type): article (строчными буквами).
- URL страницы (og:url): [node:url:absolute]
- Заголовок (og:title): [node:title]
- Описание (og:description): [node:summary]
- Image (og:image): Токен главного изображения статьи (например, [node:field_image:entity:url]).
Schema.org: Article:
- @type: Article (или BlogPosting для авторского блога).
- @id: [node:url:absolute]
- Headline и Name: [node:title]
- Description: [node:summary]
- Image: Токен изображения статьи с указанием его размеров (width и height).
- Date published: [node:created:html_datetime]
- Date modified: [node:changed:html_datetime]
- Author: Название организации или имя автора (текстом или через токен [node:author:display-name]).
5. Обычные страницы, услуги и сервисы (Content: Страница)
Для статических и сервисных страниц («О проекте», «Цены», «Контакты», онлайн-сервисы и калькуляторы), которые не являются новостями или статьями.
Open Graph:
- Тип материала (og:type): website
- URL страницы (og:url): [node:url:absolute]
- Заголовок (og:title): [node:title]
- Описание (og:description): [node:summary]
Schema.org: WebPage:
- @type: WebPage
- @id: [node:url:absolute]
- Name: [node:title]
- Description: [node:summary]
- In language: [node:langcode] (или ru)
Важно: Вкладка Schema.org: Article здесь должна быть полностью отключена.
6. Товары и платные услуги (Schema.org: Product)
Для карточек товаров (в Drupal Commerce или обычных нодах товаров/услуг) используется сущность Product в связке с торговым предложением Offer. Это позволяет поисковым роботам и нейросетям выводить цену, валюту и статус наличия прямо в сниппете.
Шаг 1. Активация подмодуля
- Перейдите в раздел Расширения (/admin/modules).
- Включите подмодуль Schema.org: Product (входит в пакет Schema.org Metatag).
Шаг 2. Настройка в шаблоне товара
Откройте настройки метатегов для вашего типа товара (например, Commerce Product: Товар или Content: Товар) по адресу /admin/config/search/metatag.
Open Graph:
- Тип материала (og:type): product (или website, если парсеры ругаются на специфические типы).
- URL страницы (og:url): [commerce_product:url:absolute] (или [node:url:absolute], если товар сделан через обычный материал).
- Заголовок (og:title): [commerce_product:title] (или [node:title]).
- Описание (og:description): [commerce_product:body:summary] (или [node:summary]).
- Image (og:image): Токен главного фото товара.
Schema.org: Product:
- @type: Product
- @id: [commerce_product:url:absolute] (или [node:url:absolute]).
- Name: Название товара ([commerce_product:title] или [node:title]).
- Description: Чистое описание товара без HTML-тегов.
- Image: Ссылка на изображение товара.
- Sku (Артикул): Токен артикула (например, [commerce_product:sku]).
- Brand: Тип Brand, в поле Name укажите название бренда или вашего магазина.
Блок Offers (Цена и наличие — обязательно для сниппетов!):
Разверните вложенную секцию Offers внутри вкладки Schema.org: Product:- @type: Offer
- Price (Цена): Токен числового значения цены без пробелов и символов валюты (например, [commerce_product:variation:price:number] или ваше кастомное поле цены [node:field_price]).
- PriceCurrency (Валюта): Трёхбуквенный код валюты по стандарту ISO 4217 — RUB, USD или EUR.
- Availability (Наличие): Выберите статус из списка или укажите ссылку стандарта Schema.org:
- В наличии: https://schema.org
- Под заказ: https://schema.org
- Нет в наличии: https://schema.org
- Url: Ссылка на страницу товара.
Важно: Вкладка Schema.org: Article для товаров должна быть полностью отключена.
7. Рубрики, теги и каталоги (Таксономия и Views)
Страницы рубрик и тегов (Термины таксономии)
На страницах категорий не работают токены материалов ([node:...]). Используйте только токены терминов ([term:...]).
- Canonical URL и og:url: [term:url:absolute]
- Title и og:title: [term:name] | [site:name]
- Description и og:description: [term:description]
- Schema.org: WebPage: Выберите @type = CollectionPage, Name = [term:name], Description = [term:description].
Страницы списков с пагинацией (Представления / Views)
Если сводный каталог или архив статей собран через конструктор Views (/admin/structure/views):
- Откройте редактирование нужного представления -> колонка Настройки страницы -> пункт Метатеги.
- В полях Canonical URL и og:url обязательно укажите [current-page:url:absolute]. Это защитит страницы пагинации (?page=1, ?page=2) от склеивания в дубли.
- В Schema.org: WebPage выберите тип CollectionPage.
8. Настройка хлебных крошек (Schema.org: BreadcrumbList)
Навигационная цепочка улучшает вид сниппета в поиске. Она должна выводиться на всех внутренних страницах, но отсутствовать на главной.
Активация:
Включите подмодуль Schema.org: ItemList (или BreadcrumbList) на странице /admin/modules.
Настройка в Metatag:
Откройте шаблон Содержимое (Content) (или шаблоны конкретных типов материалов) и разверните вкладку Schema.org: ItemList:
- @type: BreadcrumbList
- @id: [current-page:url:absolute]#breadcrumb
- ItemListElement: Используйте встроенный токен хлебных крошек (например, [current-page:breadcrumb] при наличии модуля Token).
Исключение для главной:
В шаблоне Главная страница (Front page) оставьте эту вкладку пустой (Ignore).
Альтернатива:
Если на сайте установлен модуль Easy Breadcrumb, достаточно зайти в /admin/config/user-interface/easy-breadcrumb и поставить галочку «Включить JSON-LD разметку для хлебных крошек». Модуль сгенерирует разметку автоматически без участия Metatag.
9. Настройка блока «Вопрос-Ответ» (Schema.org: FAQPage)
Разметка FAQPage выводит раскрывающиеся вопросы и ответы прямо в результатах поиска Google и Яндекса. Идеально подходит для страниц услуг, тарифов и посадочных страниц.
Требование поисковиков: Все вопросы и ответы из разметки должны физически отображаться в тексте самой страницы для посетителей.
Активация:
Включите подмодуль Schema.org: FAQPage на странице /admin/modules.
Подготовка полей:
Создайте в типе материала (например, Страница) два многозначных текстовых поля: для вопроса (field_faq_question) и для ответа (field_faq_answer), либо используйте модуль Paragraphs. Либо используйте на базе существующих полей в определенном типе материала через стандартные токены, например: [node:title] и [node:body].
Связывание в Metatag:
Откройте шаблон нужного типа материала -> вкладка Schema.org: FAQPage:
- @type: FAQPage
- MainEntity: Выберите тип Question.
- Name (Вопрос): Вставьте токен [node:field_faq_question].
- AcceptedAnswer: Выберите тип Answer, а в поле Text (Ответ) вставьте токен [node:field_faq_answer].
Если на конкретной странице эти поля не заполнены, Drupal автоматически скроет блок FAQPage из кода, не создавая ошибок валидации.
10. Настройка мультиязычных сайтов (Языковые версии и hreflang)
Если на сайте используется несколько языков (например, русский и английский), поисковые роботы должны понимать, какая версия страницы для какой аудитории предназначена. Если это упустить, Яндекс и Google будут считать переведённые страницы дублями друг друга.
Включение автоматических тегов hreflang
- Встроенный модуль ядра: В Drupal 10/11 за генерацию тегов <link rel="alternate" hreflang="..." /> отвечает системный модуль Content Translation (Перевод содержимого). Как только вы переводите материал, ядро само добавляет правильные теги hreflang в секцию <head>.
- Расширенный контроль: Если у вас есть страницы, созданные через Views, или сложные региональные поддомены, установите дополнительный модуль Hreflang (drupal/hreflang). Он автоматически проставляет альтернативные языковые ссылки на всех страницах сайта.
Динамические токены языка
На мультиязычном сайте нельзя вписывать код языка вручную (например, жёстко писать ru). Используйте динамические токены
- Вкладка Open Graph (og:locale): Вставьте токен [node:langcode] (или [current-page:language:langcode]). Для строгого формата вида ru_RU / en_US можно включить подмодуль Open Graph: Locale.
- Вкладка Schema.org (inLanguage): Во всех сущностях (WebSite, WebPage, Article) в поле In language укажите токен [node:langcode] (для материалов) или [language:langcode] (для глобальных шаблонов).
Ловушка с URL на мультиязычной Главной странице
На мультиязычном сайте нельзя прописывать в шаблоне Главной страницы жёсткий URL руками (https://ваш_домен), иначе английская главная (https://ваш_домен/en) получит канонический адрес русской версии и выпадет из поиска.
- Решение: В шаблоне Главная страница (Front page) в полях Canonical URL и og:url используйте токен [site:url]. Для русской версии он автоматически подставит https://ваш_домен, а для английской — https://ваш_домен/en.
Перевод шаблонов метатегов
- Включите модуль Configuration Translation (Перевод конфигурации) на странице /admin/modules.
- Перейдите в /admin/config/search/metatag, нажмите на стрелочку рядом с кнопкой Редактировать у нужного шаблона (например, Главная страница) и выберите Перевести (Translate), чтобы перевести статичные заголовки и описания.
11. Оптимизация под нейросети и ИИ-поиск (GEO)
Современные поисковые системы (Яндекс с технологией Нейро, Google AI Overviews, ChatGPT Search, Perplexity) используют нейросети для генерации готовых ответов со ссылками на источники. Чтобы ваш сайт чаще цитировался искусственным интеллектом, настройте доступ и семантику.
Настройка метатегов Robots для ИИ-роботов
Во вкладке Расширенные (Advanced) модуля Metatag можно управлять тем, как нейросети используют ваш контент:
- Если вы хотите, чтобы нейросети цитировали сайт в ответах: Убедитесь, что в поле Robots стоит разрешение index, follow, max-snippet:-1. Директива max-snippet:-1 снимает ограничения на длину текстового фрагмента, который ИИ может забрать для формирования ответа.
- Если вы запрещаете использовать контент для обучения ИИ-моделей: Добавьте в поле Robots (в шаблоне Глобально) специальные директивы noai, noimageai. Также рекомендуется продублировать правила в файле robots.txt в корне сайта: разрешить поисковым агентам (OAI-SearchBot, PerplexityBot), но при желании закрыть сборщики данных для обучения (GPTBot, Google-Extended, CCBot).
Специальный файл llms.txt
Нейросети плохо парсят сложную HTML-вёрстку с меню и скриптами. Чтобы ИИ мгновенно понимал структуру вашего сайта, установите в Drupal 10/11 модуль LLMs.txt (или создайте файл llms.txt в корне сайта вручную). В нём в чистом текстовом формате (Markdown) перечисляются главные разделы сайта, описание проекта и ссылки на самые важные экспертные материалы.
Усиление Schema.org для цитирования в ИИ
ИИ-поисковики опираются на структурированные данные, чтобы проверить достоверность фактов и экспертность автора (фактор E-E-A-T). В настройках Schema.org Metatag для статей обязательно добавьте:
- Author с типом Person: Указывайте реального автора-эксперта (@type = Person, Name = Имя Фамилия, JobTitle = Специализация, Url = ссылка на страницу автора). Нейросети гораздо охотнее цитируют материалы с подтверждённым экспертом.
- About и Keywords: В шаблоне статьи заполните поле About (через токен тегов или рубрик, например [node:field_tags]). Это помогает ИИ точно связать статью с конкретной областью знаний.
- FAQPage: Нейросети чаще всего берут готовые формулировки для ответов пользователям именно из блоков, размеченных как FAQPage.
12. Финальная проверка и отладка
- Очистите кэш: После любых изменений в метатегах переходите в /admin/config/development/performance и нажимайте Очистить все кэши.
- Не пугайтесь атрибутов доступности в отчётах: Если в валидаторах вы видите строки xhtml/vocab#role или menuitem — это стандартные HTML5-атрибуты доступности (ARIA) в вёрстке меню вашей темы оформления. Поисковые роботы воспринимают их как корректную семантику вёрстки, на SEO они не влияют.
- Прогоните страницы через валидаторы: Проверьте главную страницу, одну статью, карточку товара, сервисную страницу и рубрику через инструмент «Проверка микроразметки» в Яндекс Вебмастере и Rich Results Test от Google.
Работает ли эта схема на других CMS (WordPress, Bitrix, OpenCart, ModX)?
Да, на 100%. Поисковым роботам Яндекса, Google и нейросетевым алгоритмам (GEO) не важно, на какой системе управления работает сайт — они считывают единый международный стандарт JSON-LD (Schema.org) и метатеги Open Graph.
В этом руководстве показана глубокая ручная настройка на примере Drupal 10 и 11. Если ваш проект работает на WordPress, та же самая архитектура сущностей (WebSite, Organization, Article, Product, FAQPage, BreadcrumbList) настраивается через SEO-плагины Rank Math или Yoast SEO, а на других CMS — через профильные SEO-модули или шаблоны вывода. Главное правило остаётся неизменным везде: жёсткое разделение типов страниц и отсутствие дублей в коде.
Более подробно о том как настроить WordPress в следующей выпуске.
