#php #wordpress #woocommerce #woocommerce-bookings
#php #wordpress #woocommerce #woocommerce-бронирование
Вопрос:
У меня есть продукт в WooCommerece, у которого есть отображение и базовая цена. Используется следующий код:
global $woocommerce;
foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $cart_item ) {
$productID = $cart_item['product_id'];
break; //Take the first as an example
}
$product = new WC_Product($productID);
$base_price= $product->get_price();
$display_price = $product->get_display_price();
Моя проблема в том, что базовая и отображаемая цены возвращаются как одно и то же значение, но они поддерживаются по-разному в серверной части.
Обновление: Настройки налога
Я понимаю, что эта проблема может быть связана с настройками налогообложения. Вот мои:
- Налоги включены
- Цены указаны с учетом налога
- Рассчитайте налог на основе адреса магазина
- Класс налога на доставку, основанный на товарах в корзине
- Без округления
- Никаких дополнительных классов налогообложения
- Отображение цен в магазине без учета налогов
- Отображение цен в корзине / оформлении заказа без учета налога
- Нет суффикса
- Отображение итоговых сумм налогов в детальном виде
Существует также общий стандартный тариф, который равен нулю.
И для продукта:
- Облагается налогом
- Налоговый класс является стандартным
Обновить
Проблема связана с тем, что я использую плагин бронирования WooCommerce. Чтобы получить базовую цену бронирования:
глобальный $ woocommerce;
foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $cart_item ) {
$productID = $cart_item['product_id'];
break;//Take the first as an example
}
$product = new WC_Product($productID);
$admission = $product->wc_booking_cost;
Ответ №1:
$product->get_regular_price() возвращает обычную цену.
$product->get_sale_price() возвращает продажную цену, если товар есть в продаже.
$product->get_price() возвращает цену продукта (распродажную или обычную, в зависимости от того, что является текущим).
$product->get_display_price() Возвращает цену с учетом или без учета налога, основанную на настройке ‘woocommerce_tax_display_shop’.
Комментарии:
1. Спасибо Mizda. display_price возвращает отображаемую цену. get_price возвращает то же, что и display_price. regular_price и sale_price возвращают нулевое значение. Очень странное поведение.
2. Установили ли вы настройку отображения налогов в серверной части? Если у вас ее нет, то отображаемая цена и price будут одинаковыми.