Описание updated_$THIS->OBJECT_TYPE_meta
— Action
Хук updated_$THIS->OBJECT_TYPE_meta срабатывает после обновления метаданных определённого типа объекта. Он используется для выполнения дополнительных действий после того, как объект был обновлён, например, для кэширования или уведомления
Примеры использования
Пример отправки уведомления после обновления метаполя товара:
add_action('updated_product_meta', function($meta_id, $object_id, $meta_key, $meta_value) {
// Отправка уведомления о том, что метаполе обновлено
wp_mail('admin@example.com', 'Метаполе обновлено', 'Метаполе ' . $meta_key . ' для товара ' . $object_id . ' было обновлено');
}, 10, 4);
Этот код отправляет уведомление на электронную почту администратора при обновлении метаполя товара
Пример кэширования данных после изменения метаполя:
add_action('updated_post_meta', function($meta_id, $object_id, $meta_key, $meta_value) {
// Очистка кэша для обновлённого поста
wp_cache_delete($object_id, 'post_meta');
}, 10, 4);
Здесь мы очищаем кэш для поста, когда его метаполе обновляется
Пример логирования изменений метаданных:
add_action('updated_user_meta', function($meta_id, $object_id, $meta_key, $meta_value) {
// Запись изменений в лог
error_log('Метаполе ' . $meta_key . ' для пользователя ' . $object_id . ' обновлено на ' . print_r($meta_value, true));
}, 10, 4);
Этот код записывает изменения метаданных пользователя в лог ошибок
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнять действия после обновления метаданных, такие как логирование, уведомления или очистка кэша
– Производительность
Обратите внимание на производительность, особенно если выполняете сложные операции в хуке, так как это может замедлить процесс обновления
– Предупреждения
Следите за тем, чтобы код внутри хуков не вызывал бесконечный цикл обновлений
Альтернативы
Тип: action
Этот хук срабатывает при добавлении метаполя, позволяя выполнять действия только при создании новых метаданных
Используйте его, если вам нужно выполнять действия только при добавлении метаданных, а не при их обновлении