在 Woocommerce 中获取订单项目数据值
Get order items data values in Woocommerce
在 Woocommerce 中,目前我有一个表格,客户可以在其中输入订单号、他们的姓名和他们的 post 号码。代码遍历此代码,如果一切正确,则会向客户显示他订购的商品,这导致了我的问题:
在 WooCommerce 表格中,价格和数量都在同一列中,我似乎无法单独获取值。
我已经尝试过不同的方法来完成我当前的查询,但这是我最近最接近成功的方法:
$sql2 = "SELECT *
FROM wp_woocommerce_order_items
LEFT JOIN wp_woocommerce_order_itemmeta ON wp_woocommerce_order_items.order_item_id = wp_woocommerce_order_itemmeta.order_item_id
WHERE wp_woocommerce_order_items.order_id = $ordernumber
AND (meta_key IN ('_line_total', '_qty'))";
我还使用 foreach 循环打印结果:
(也很抱歉图片和代码中的芬兰语位)
foreach ($res2 as $row) {
echo "<input type='checkbox' name='productinfo[]'><label> Tuotenimi: " . $row['order_item_name'] . "<br /> Kappalehinta: " . $row['meta_value'] ." €"
. "<br /><br />";
}
但是,此代码的问题在于,将“_qty”列添加到 AND 子句会导致结果与此处所见的结果一样多(对于大多数芬兰网站也很抱歉):
我希望能够单独打印数量和价格 elements/variables 并且能够添加价格,以获得所有产品的总价。
如果代码或问题令人困惑,请问我!
更新
因此,Dipmala 建议我使用 group by 来帮助我获得正确数量的结果。但是,我仍然不知道如何将数量与价格分开打印。
/傀儡
而不是使用 SQL 查询试试这个 (其中 $order_id
是 post ID(或订单号)):
$order = wc_get_order( $order_id );
echo '<p>'. __('Order total: ') . $order->get_total() . '</p>';
foreach ( $order->get_items() as $item ){
echo '<p>';
echo __('Product name: ') . $item->get_name() . '<br>';
echo __('Quantity: ') . $item->get_quantity() . '<br>';
echo __('Line total: ') . wc_price($item->get_total()) . '</p>';
}
相关:
在 Woocommerce 中,目前我有一个表格,客户可以在其中输入订单号、他们的姓名和他们的 post 号码。代码遍历此代码,如果一切正确,则会向客户显示他订购的商品,这导致了我的问题:
在 WooCommerce 表格中,价格和数量都在同一列中,我似乎无法单独获取值。
我已经尝试过不同的方法来完成我当前的查询,但这是我最近最接近成功的方法:
$sql2 = "SELECT *
FROM wp_woocommerce_order_items
LEFT JOIN wp_woocommerce_order_itemmeta ON wp_woocommerce_order_items.order_item_id = wp_woocommerce_order_itemmeta.order_item_id
WHERE wp_woocommerce_order_items.order_id = $ordernumber
AND (meta_key IN ('_line_total', '_qty'))";
我还使用 foreach 循环打印结果: (也很抱歉图片和代码中的芬兰语位)
foreach ($res2 as $row) {
echo "<input type='checkbox' name='productinfo[]'><label> Tuotenimi: " . $row['order_item_name'] . "<br /> Kappalehinta: " . $row['meta_value'] ." €"
. "<br /><br />";
}
但是,此代码的问题在于,将“_qty”列添加到 AND 子句会导致结果与此处所见的结果一样多(对于大多数芬兰网站也很抱歉):
我希望能够单独打印数量和价格 elements/variables 并且能够添加价格,以获得所有产品的总价。
如果代码或问题令人困惑,请问我!
更新
因此,Dipmala 建议我使用 group by 来帮助我获得正确数量的结果。但是,我仍然不知道如何将数量与价格分开打印。 /傀儡
而不是使用 SQL 查询试试这个 (其中 $order_id
是 post ID(或订单号)):
$order = wc_get_order( $order_id );
echo '<p>'. __('Order total: ') . $order->get_total() . '</p>';
foreach ( $order->get_items() as $item ){
echo '<p>';
echo __('Product name: ') . $item->get_name() . '<br>';
echo __('Quantity: ') . $item->get_quantity() . '<br>';
echo __('Line total: ') . wc_price($item->get_total()) . '</p>';
}
相关: