Автоматическая разметка Schema.org для ACF

Обзор

Автоматически выводите структурированные данные Schema.org для полей ACF в виде JSON-LD в секции head страницы.

Описание

В ACF 6.8 появился вывод структурированных данных JSON-LD для полей ACF. Эта функция сопоставляет значения полей ACF со свойствами Schema.org, помогая поисковым системам и системам ИИ лучше понимать структуру вашего контента.

JSON-LD (JavaScript Object Notation for Linked Data) — рекомендуемый Google формат структурированных данных. Сопоставляя поля ACF со свойствами Schema.org, вы можете:

  • Улучшить SEO с помощью расширенных сниппетов в результатах поиска
  • Помочь системам ИИ и LLM понимать ваш контент (ChatGPT, Claude, Google AI Overviews)
  • Поддержать Generative Engine Optimization (GEO) и Answer Engine Optimization (AEO)
  • Предоставлять машинно-читаемые данные агрегаторам контента

ACF поддерживает 867 типов Schema.org и 1 509 свойств из коробки.

См. пост о релизе ACF 6.8 для обзора.

Экспериментальная функция

В ACF admin UI эта функция помечена как экспериментальная. Область generative engine optimization (GEO) быстро развивается, и лучшие практики того, как системы ИИ интерпретируют и показывают структурированные данные, только формируются. Мы рекомендуем поэкспериментировать с этой функцией и поделиться обратной связью.

Требования

  • ACF 6.8 или новее
  • WordPress 6.0 или новее

Настройка

Включите функцию Schema

Добавьте этот фильтр в файл functions.php вашей темы или в пользовательский плагин:

add_filter( 'acf/settings/enable_schema', '__return_true' );

1. Включите JSON-LD для типа записи

Отредактируйте ваш пользовательский тип записи ACF и перейдите на вкладку Schema:

  1. Включите «Автоматически добавлять данные JSON-LD для полей этого типа записи»
  2. При необходимости выберите тип Schema.org (например, Recipe, Product, Event)

Тип Schema.org определяется автоматически по сопоставлениям полей, но здесь его можно задать явно.

2. Сопоставьте поля со свойствами Schema.org

Отредактируйте каждое поле и настройте параметр Свойство Schema.org:

  1. Откройте настройки поля
  2. Найдите «Свойство Schema.org» в общих настройках
  3. Выберите подходящее свойство (например, name, description, price)
  4. При необходимости настройте формат вывода

Список свойств фильтруется так, чтобы показывать только совместимые с типом поля варианты.

Типы Schema.org

ACF поддерживает все типы Schema.org. Среди распространённых типов:

ТипСценарий использования
ArticleЗаписи блога, новостные статьи
BlogPostingЗаписи блога
ProductТовары для e-commerce
RecipeКулинарные рецепты
EventСобытия с датами и локациями
PersonЛюди, авторы, члены команды
OrganizationКомпании, бренды
LocalBusinessЛокальные бизнес-организации
HowToПошаговые руководства
FAQPageКонтент FAQ

Совместимость типов полей

Каждый тип поля ACF сопоставляется с определёнными типами данных Schema.org:

Тип поля ACFТипы Schema.org
text, textarea, wysiwygТекст, URL, Name
number, rangeЧисло, Integer, Float
emailТекст (формат email)
urlURL
date_pickerДата
date_time_pickerДата и время
time_pickerВремя
true_falseЛогический тип
imageImageObject, URL
select, radio, button_groupТекст, Enumeration
userPerson
taxonomyТекст, Thing

Формат вывода

JSON-LD выводится в секции <head> отдельных записей и страниц:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Печенье с шоколадной крошкой",
  "description": "Классическое домашнее печенье с шоколадной крошкой",
  "prepTime": "PT15M",
  "cookTime": "PT12M",
  "recipeYield": "24 печенья",
  "recipeIngredient": [
    "2 стакана муки",
    "1 стакан сахара",
    "1 стакан шоколадной крошки"
  ]
}
</script>

Фильтры

ACF предоставляет обширные фильтры для настройки вывода JSON-LD.

Управление выводом

ФильтрОписание
acf/schema/debugВключить HTML-комментарии для отладки
acf/schema/disable_outputОтключить вывод JSON-LD для конкретных данных
acf/schema/enabled_post_typesОтфильтровать типы записей, для которых включён JSON-LD
acf/schema/render_scriptДействие перед выводом тега script

Настройка данных

ФильтрОписание
acf/schema/dataИзменить итоговые данные JSON-LD перед выводом
acf/schema/auto_add_imageУправлять автоматическим добавлением изображения записи
acf/schema/auto_add_authorУправлять автоматическим добавлением автора

Для конкретной записи

ФильтрОписание
acf/schema/post_field_objectsОтфильтровать объекты полей для записи
acf/schema/post_field_objects/post_type={post_type}Объекты полей для конкретного типа записи

Для конкретного блока

ФильтрОписание
acf/schema/block_jsonld_enabledВключить или отключить JSON-LD для конкретных блоков
acf/schema/block_field_objectsОтфильтровать объекты полей для блока
acf/schema/block_field_objects/block_name={block_name}Объекты полей для конкретного блока

Форматирование значений

ФильтрОписание
acf/schema/format_value/preПредварительное форматирование значения поля
acf/schema/format_value/pre/type={field_type}Предварительное форматирование по типу поля
acf/schema/format_value/pre/name={field_name}Предварительное форматирование по имени поля
acf/schema/format_valueПостформатирование значения поля
acf/schema/format_value/type={field_type}Постформатирование по типу поля
acf/schema/format_value/name={field_name}Постформатирование по имени поля

Настройка Schema

ФильтрОписание
acf/schema/schema_typesОтфильтровать доступные типы Schema.org
acf/schema/schema_priority_typesОтфильтровать приоритетные типы в выпадающих списках
acf/schema/schema_propertiesОтфильтровать доступные свойства Schema.org
acf/schema/output_format_choicesОтфильтровать варианты формата вывода

Поддержка блоков ACF

Вывод JSON-LD также доступен для блоков ACF. Включите его через block.json:

{
  "name": "acf/recipe-card",
  "title": "Карточка рецепта",
  "acf": {
    "autoJsonLd": true,
    "schemaType": "Recipe"
  }
}

Или через программную регистрацию:

acf_register_block_type( array(
    'name'       => 'recipe-card',
    'title'      => 'Карточка рецепта',
    'acf'        => array(
        'autoJsonLd'  => true,
        'schemaType'  => 'Recipe',
    ),
));

Автоматическое дополнение данных

ACF автоматически дополняет вывод JSON-LD основными данными WordPress:

  • Автор: схема Person с именем и URL архива
  • Избранное изображение: ImageObject с размерами и URL
  • Мета-данные записи: datePublished, dateModified, url, name

Эти данные автоматически объединяются с вашими сопоставлениями полей.

Поля Repeater

Подполя Repeater могут сопоставляться со свойствами Schema, создавая массивы:

Сопоставление поля: Repeater с текстовым подполем, сопоставленным с recipeIngredient

Вывод:

{
  "recipeIngredient": [
    "2 стакана муки",
    "1 стакан сахара",
    "3 яйца"
  ]
}

Примечания

  • JSON-LD выводится только на страницах отдельных записей/страниц (не в предпросмотре редактора блоков)
  • Пустые значения полей автоматически исключаются
  • Вложенные объекты (например, author или publisher) автоматически получают соответствующие значения @type
  • В admin UI эта функция помечена как Experimental

Обновлено: 01.06.2026