Доброго времени суток.
Делаю на сайте разный ценник для товара при выборе города.
В принципе через кастомные поля получилось вывести цену на странице с товаром
add_filter('woocommerce_get_price', 'change_price_regular_member', 10, 2);
add_filter('woocommerce_get_regular_price', 'change_price_regular_member', 10, 2);
add_filter('woocommerce_get_sale_price', 'change_price_regular_member', 10, 2);
add_filter('woocommerce_order_amount_item_subtotal', 'change_price_regular_member', 10, 2);
function change_price_regular_member($orginal_price)
{
global $post, $woocommerce;
$city = $_COOKIE["remember_select"];
switch ($city) {
case 'gorod0':
$new_price = $orginal_price + get_post_meta(get_the_ID(), 'gorod0', true);
break;
case 'gorod2':
$new_price = $orginal_price + get_post_meta(get_the_ID(), 'gorod1', true);
break;
case 'gorod2':
$new_price = $orginal_price + get_post_meta(get_the_ID(), 'gorod2', true);
break;
default:
$new_price = $orginal_price;
break;
}
return $new_price;
}
Но вот в корзине цена уже берется из базового поля. Как быть в данной ситуации? Этот вопрос был уже конечно задан тут:
Как в WooCommerce реализовать разный ценник товара для разных городов? , но я не очень понял как это реализовать. Очень прошу помочь. Спасибо!