Диагностика: почему нужно удалить Schema.org из темы WordPress
Не все темы WordPress подходят для использования встроенной разметки Schema.org. Иногда она внедряется автоматически и конфликтует с плагинами SEO или вызывает дублирование данных, что ведет к ошибкам в Google Search Console и ухудшению SEO. Чтобы понять, есть ли такая разметка в вашей теме, откройте исходный код страницы (Ctrl+U) и найдите по запросу itemscope или itemtype="http://schema.org/". Если вы видите много таких меток, и они не соответствуют вашим задачам, их стоит убрать.
Как определить источник разметки Schema.org
В темах WordPress разметка может добавляться несколькими способами:
- Жестко прописана в шаблонах (.php файлах темы — header.php, single.php, content.php и пр.);
- Добавляется через хуки в functions.php;
- Генерируется плагинами SEO (Yoast SEO, Rank Math и др.).
Для точной диагностики временно деактивируйте все плагины SEO и посмотрите исходный код. Если разметка осталась — значит, она в теме. Если пропала — смотрите настройки плагина.
Пошаговое удаление разметки Schema.org из темы
1. Поиск и модификация шаблонов
Откройте файлы темы, особенно header.php, single.php, content.php, archive.php. Ищите HTML-атрибуты itemscope, itemtype, itemprop. Например:
<article itemscope itemtype="http://schema.org/Article">
<h1 itemprop="headline">Заголовок</h1>
</article>Удалите эти атрибуты или оберните их условием, чтобы отключать разметку через настройку. Пример условного отключения в коде:
if ( ! get_theme_mod('disable_schema', false) ) {
echo '<article itemscope itemtype="http://schema.org/Article">';
} else {
echo '<article>';
}2. Отключение хуков, добавляющих разметку
Иногда темы добавляют схему через хуки, например в functions.php:
add_action('wp_head', 'mytheme_add_schema');
function mytheme_add_schema() {
echo '<script type="application/ld+json">...</script>';
}Чтобы отключить, используйте:
remove_action('wp_head', 'mytheme_add_schema');Рекомендуется делать это в дочерней теме или плагине, чтобы не потерять изменения при обновлении.
3. Проверка влияния SEO-плагинов
Если после отключения темы разметка осталась, проверьте настройки SEO-плагинов. Например, в Yoast SEO можно отключить вывод схемы в разделе «SEO» -> «Search Appearance» -> вкладка «Общее» -> Отключить Schema.org.
Как проверить результат удаления Schema.org
После внесения изменений очистите кеш сайта и браузера. Проверьте исходный код страницы — атрибуты и скрипты с разметкой должны исчезнуть. Используйте Google Rich Results Test (https://search.google.com/test/rich-results) для проверки страницы. Там не должно быть данных Schema.org, если вы их удалили.
Частые ошибки при удалении Schema.org из темы
- Удаление только части атрибутов: оставшиеся
itemscopeилиitempropвызывают ошибки валидации. - Забыли отключить хуки, которые добавляют JSON-LD через
wp_headилиwp_footer. - Изменения внесены в родительскую тему без дочерней, потеря правок при обновлении.
- Не очистили кеш после правок — старый код продолжает отображаться.
Практические советы по безопасности и производительности
- Удаление ненужной разметки уменьшает объем HTML и скриптов, что ускоряет загрузку страниц.
- Разметка JSON-LD может содержать уязвимости, если генерируется некорректно — убирайте, если она не нужна.
- Всегда используйте дочернюю тему для правок, чтобы не потерять их при обновлениях.
- Для контроля версий используйте Git, чтобы отслеживать изменения в шаблонах.
Сравнение способов отключения разметки Schema.org
| Метод | Преимущества | Недостатки |
|---|---|---|
| Правка шаблонов темы | Точный контроль, отключение на уровне HTML | Требует навыков PHP/HTML, риск потери правок при обновлении |
| Отключение хуков | Чистый код, без правки шаблонов | Нужно знать названия функций, может быть сложно найти |
| Настройки SEO-плагинов | Простое отключение без кода | Не работает, если разметка в теме |