Какой обходной путь существует для запуска действия woocommerce_update_product только один раз?
Я читал, что он срабатывает дважды, потому что ему нужно сохранить один раз внутри, чтобы получить идентификатор для сохранения изображений / вариантов.
Но, судя по опыту разработчиков, это действительно не то, что нужно большинству, я думаю.
Единственный обходной путь, который я нашел до сих пор, — это добавить действие и удалить его напрямую в хуке:
add_action('woocommerce_update_product', 'my_product_update', 10, 2);
function my_product_update($product_id, $product){
remove_action('woocommerce_update_product');
// We'll get here only once!
}
Однако это ломается при попытке выполнить массовое редактирование, поэтому хук срабатывает только для первого продукта (потому что впоследствии он удаляется!).
Какой еще способ обойти эту проблему?
Спасибо!