Фильтр acf/schema/block_jsonld_enabled

Обзор

Включайте или отключайте вывод JSON-LD для определённых блоков.

Описание

Этот фильтр позволяет программно управлять тем, включён ли вывод JSON-LD для конкретных блоков ACF. Он срабатывает после проверки настройки блока autoJsonLd, что позволяет переопределить поведение по умолчанию.

Журнал изменений

  • Добавлено в версии 6.8.0

Параметры

apply_filters( 'acf/schema/block_jsonld_enabled', $enabled, $block, $block_type );
  • $enabled (bool) Включён ли JSON-LD для этого блока (из настройки autoJsonLd)
  • $block (array) Массив свойств блока, содержащий данные блока
  • $block_type (array) Настройки зарегистрированного типа блока

Возвращаемое значение

(bool) Нужно ли выводить JSON-LD для этого блока.

Пример

Этот пример включает JSON-LD для всех блоков рецептов независимо от настроек.

/**
 * Принудительно включить JSON-LD для блоков рецептов.
 *
 * @param bool  $enabled    Включён ли JSON-LD.
 * @param array $block      Свойства блока.
 * @param array $block_type Настройки типа блока.
 * @return bool Следует ли включать JSON-LD.
 */
function my_acf_schema_enable_recipe_blocks( $enabled, $block, $block_type ) {
    if ( $block['name'] === 'acf/recipe' ) {
        return true;
    }
    return $enabled;
}
add_filter( 'acf/schema/block_jsonld_enabled', 'my_acf_schema_enable_recipe_blocks', 10, 3 );

Этот пример отключает JSON-LD для блоков в режиме предпросмотра.

/**
 * Отключить JSON-LD в контексте предпросмотра.
 *
 * @param bool  $enabled    Включён ли JSON-LD.
 * @param array $block      Свойства блока.
 * @param array $block_type Настройки типа блока.
 * @return bool Следует ли включать JSON-LD.
 */
function my_acf_schema_disable_preview_jsonld( $enabled, $block, $block_type ) {
    if ( isset( $block['data']['preview'] ) && $block['data']['preview'] ) {
        return false;
    }
    return $enabled;
}
add_filter( 'acf/schema/block_jsonld_enabled', 'my_acf_schema_disable_preview_jsonld', 10, 3 );

Обновлено: 02.06.2026