Я пытаюсь создать функциональность в моем магазине WooCommerce, чтобы обновлять количество товаров при нажатии на них / страница их продукта загружается на основе внешней базы данных и API. Я успешно создал функцию, используя такой хук:
add_action('woocommerce_before_single_product', 'update_product_stock');
function update_product_stock(){
global $product;
$sku = $product -> get_sku();
//code for updating based on $sku
}
Таким образом, когда загружается страница для продукта, это корректно меняет сумму запаса для продукта. Проблема в том, что это изменение не отражается, поскольку страница загружается / отображается. Страница должна быть обновлена или повторно посещена для новой суммы запаса, которая будет показана. Я также пытался использовать хук 'init' и хук 'template_redirect', но они не позволяют мне получить доступ к продукту, чтобы получить информацию id / sku / other для отправки в API для извлечения данных.
Кто-нибудь знает, как мне получить информацию об элементе товара, обновить метаданные поста (я использую wc_update_product_stock ()) и отразить эти изменения в просмотре страницы без перезагрузки? Я думаю, что в конечном итоге мне также придется реализовать это на странице результатов поиска, но я хочу сначала отсортировать это.