Обзор
Фильтрует форматированные значения для конкретного типа поля.
Описание
Этот фильтр — версия acf/schema/format_value для конкретного типа поля. Он позволяет изменять форматированные значения только для определенного типа поля ACF.
Динамическая часть имени хука, {field_type}, относится к типу поля ACF (например, text, number, image).
Журнал изменений
- Добавлено в версии 6.8.0
Параметры
apply_filters( 'acf/schema/format_value/type={field_type}', $formatted_value, $value, $field_object );
$formatted_value(mixed) Значение после стандартного форматирования$value(mixed) Исходное необработанное значение поля$field_object(array) Объект поля с настройками
Возвращает
(mixed) Измененное форматированное значение.
Пример
Этот пример гарантирует, что все числовые поля будут выводиться как числа с плавающей точкой.
/**
* Форматирует числа как числа с плавающей точкой.
*
* @param mixed $formatted_value Отформатированное значение.
* @param mixed $value Исходное значение.
* @param array $field_object Объект поля.
* @return mixed Измененное значение.
*/
function my_acf_schema_format_numbers( $formatted_value, $value, $field_object ) {
return (float) $formatted_value;
}
add_filter( 'acf/schema/format_value/type=number', 'my_acf_schema_format_numbers', 10, 3 );
Этот пример настраивает формат вывода изображения.
/**
* Пользовательское форматирование изображения с дополнительными метаданными.
*
* @param mixed $formatted_value Отформатированное значение.
* @param mixed $value Исходное значение (ID вложения).
* @param array $field_object Объект поля.
* @return mixed Измененное значение.
*/
function my_acf_schema_format_images( $formatted_value, $value, $field_object ) {
if ( ! is_array( $formatted_value ) || ! isset( $formatted_value['@type'] ) ) {
return $formatted_value;
}
// Добавить сведения о лицензии для всех изображений
$formatted_value['license'] = 'https://creativecommons.org/licenses/by/4.0/';
// Добавить URL содержимого
if ( isset( $formatted_value['url'] ) ) {
$formatted_value['contentUrl'] = $formatted_value['url'];
}
return $formatted_value;
}
add_filter( 'acf/schema/format_value/type=image', 'my_acf_schema_format_images', 10, 3 );
Обновлено: 02.06.2026