Искал как вытянуть стоимость позиций товара из заказа в woocommerce. А в итоге обнаружил неточность в документации плагина.
Если вы располагаете идентификатором заказа, который по сути является posd_id, то алгоритм получения данных о строках заказа следующий:
|
|
$order = new WC_Order($order_id); $items = $order->get_items(); |
Переменная $items — это массив объектов, и расхождение с документацией заключается в том, какого класса эти объекты. В документации утверждается, что это объекты WC_Order_Item, но на самом деле функция возвращается объекты дочернего класса — WC_Order_Item_Product, который предоставляет больше возможностей.
Объект позволяет получить только общую стоимость в строке get_total(), потому цену (price) за единицу товара придется посчитать вручную:
|
|
foreach ($items as $item) { $row = array( 'name' => $item->get_name('edit'), 'quantity' => $item->get_quantity('edit'), 'sum' => $item->get_total('edit'), 'price' => $item->get_total('edit') / $item->get_quantity('edit'), ); ... } |
woocommerce
Данная запись опубликована в 22.11.2020 17:55 и размещена в рубрике wordpress.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Сентябрь 10, 2019 г.
Плагин woocommerce - интернет-магазин для WP - и так показывает огромное число полей на форме оформления заказа (т.н. checkout), и обычно требуется убрать/спрятать ...
Читать
Ноябрь 25, 2020 г.
Для blitzpet.ru занимался подключением платежной системы payler к woocommerce на WP. Обычно в таких случаях используются готовые "фирменные" плагины, разработанные dev team платежной системы для большинства популярных CMS. Но support со стороны payler ...
Читать
Ноябрь 28, 2020 г.
Это более подробная инструкция по настройке плагина.
Краткое описание плагина содержит настройку, здесь расскажу о ней подробнее. Подключение к Payler прежде всего может заинтересовать сайты в русском сегменте, т.к. основная валюта, поддерживаемая ...
Читать
Июль 4, 2019 г.
В админке woocommerce вы можете выбрать валюту и где её отображать - до или после цены. Но сам символ можно поменять только через PHP.
Для замены обозначения валюты плагин предусматривает использование специального фильтра - woocommerce_currency_symbol. ...
Читать