Как заставить WC автообновлять цены вариативных товаров на новом месте?
В карточке товара есть две цены - одна статичная, которая находится между заголовком товара и атрибутами / вариациями. Другая под ними, с автообновлением без перезагрузки при выборе вариации. Я скрыл статичную, и решил на то месте вставить динамичную. Но при смене вариации цена спавнится на том же месте, а на новом не реагирует никак. Как только не двигал не передвигал блоки, дропдаун из вариаций вниз, под цену, он просто исчезал.
let weight = document.querySelector("div:nth-child(1) > div.row.product-image-summary-wrap > div > div > div.col-lg-6.col-12.col-md-6.text-left.summary.entry-summary > div > form > table")
let productCardPrice = document.querySelector(".single-product .woocommerce-variation-price")
productCardPrice.insertAdjacentElement('afterend', weight);
Пишут, что это стандартное поведение woocommerce, разработчики темы этим не управляют. Задача переместить цену вариации на то месте, где была статичная цена (скрыл display: none).
Ответы (1 шт):
Пришлось подучить работу хуков вордпресс.
remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation', 10);
add_action( 'woocommerce_before_variations_form', 'woocommerce_single_variation', 20);
Ценник выше только с помощью CSS удалось скрыть, remove_action не сработал