Описание woocommerce_settings_api_sanitized_fields_$THIS->ID
— Filter
Хук woocommerce_settings_api_sanitized_fields_$THIS->ID позволяет изменить или валидировать поля настроек, которые были отправлены через API настроек WooCommerce. Он срабатывает при обработке данных настроек в админке, что дает возможность изменять данные перед их сохранением
Примеры использования
Пример добавления дополнительного значения в массив очищенных полей:
add_filter('woocommerce_settings_api_sanitized_fields_my_custom_settings', function($sanitized_fields) {
$sanitized_fields['my_custom_field'] = sanitize_text_field($_POST['my_custom_field']);
return $sanitized_fields;
});
В этом примере мы добавляем значение из пользовательского поля в массив очищенных полей перед сохранением
Пример удаления поля из массива очищенных полей:
add_filter('woocommerce_settings_api_sanitized_fields_my_custom_settings', function($sanitized_fields) {
unset($sanitized_fields['unwanted_field']);
return $sanitized_fields;
});
Здесь мы удаляем поле ‘unwanted_field’ из массива очищенных полей
Пример изменения значения поля перед сохранением:
add_filter('woocommerce_settings_api_sanitized_fields_my_custom_settings', function($sanitized_fields) {
if(isset($sanitized_fields['my_field'])) {
$sanitized_fields['my_field'] .= ' - modified';
}
return $sanitized_fields;
});
Мы модифицируем значение поля ‘my_field’, добавляя к нему строку ‘ — modified’
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо валидация или модификация данных настроек перед их сохранением
– Производительность
Хук не должен сильно влиять на производительность, если не обрабатывать слишком много данных
– Предупреждения
Убедитесь, что изменения не нарушают логику работы настроек и не приводят к ошибкам
Альтернативы
Тип: action
Этот хук позволяет добавить свои собственные поля настроек перед их обработкой
Используйте его, если хотите добавить новые поля в настройки WooCommerce