Описание pre_add_site_option_{$option}
— Filter
Хук pre_add_site_option_{$option} позволяет изменить значения опций сайта перед их добавлением в базу данных. Он срабатывает в момент, когда происходит добавление новой опции, и позволяет менять её значение перед тем, как оно будет сохранено.
Примеры использования
Пример изменения значения новой опции перед её добавлением:
add_filter('pre_add_site_option_my_custom_option', function($value) {
return 'Новое значение';
});
В этом примере мы изменяем значение опции ‘my_custom_option’ на ‘Новое значение’ перед её добавлением
Пример изменения значения опции в зависимости от её имени:
add_filter('pre_add_site_option_my_other_option', function($value) {
if ($value === 'старое значение') {
return 'обновленное значение';
}
return $value;
});
Здесь мы проверяем, если значение равно ‘старое значение’, и изменяем его на ‘обновленное значение’
Пример добавления массива в качестве опции:
add_filter('pre_add_site_option_my_array_option', function($value) {
return ['key1' => 'value1', 'key2' => 'value2'];
});
В этом примере мы добавляем массив в качестве значения опции ‘my_array_option’
— Лучшие практики
– Использование
Используйте этот хук, когда нужно изменить значение опции перед её добавлением в базу данных
– Производительность
Следите за тем, чтобы изменения не вызывали значительных затрат на производительность, особенно если используются сложные вычисления
– Предупреждения
Убедитесь, что изменения не нарушают логику работы других частей кода, которые могут зависеть от значений опций
Альтернативы
Тип: filter
Этот хук позволяет изменять значения опций перед их обновлением, что может быть полезно, если вы хотите изменить уже существующее значение
Используйте его, если нужно изменить значение уже существующей опции