Ben*_*ino 6 mysql wordpress metadata orders woocommerce
我有一个用PHP编写的简单后端管理工具,它从WooCommerce数据库中提取订单并将它们呈现给我们的厨房用于处理交付.
我一直能够突出显示一个表行,该表行的状态不是'wc-completed'处理可能需要的任何其他处理.但是,今天我注意到已经为一个项目退还了一项特定订单.一个部分退款不会更改订单状态,所以我需要拉从另一个数据库表中的退款信息.
我检查了所有我知道的相关的表格,订单处理- ,,wp_posts 和,但没有任何退款信息的迹象.实际上,最后一个表中包含的itemmeta甚至没有调整数量,这使我的报告对于这样的部分订单不正确.wp_postmetawp_woocommerce_order_itemswp_woocommerce_order_itemmeta
当您在woocommerce后端查看订单摘要时,它会显示1此特定项目的数量,然后是其-1下方的数量.我假设基于此,数据库中的某个地方有与订单相关的退款记录,但我似乎无法找到它.即使订单总额中wp_postmeta也没有反映部分退款.
有谁知道这个退款数据存储在wordpress数据库中的哪个位置?
谢谢.
部分退款订单与正常退款订单一样存储在数据库中:在wp_posts带有a 'post_type' = 'shop_order_refund'和a的表中'post_parent' = order_ID (number),其中order_ID是对原始订单的引用'shop_order'.
要找出此退款之一是局部的,你需要的_refund_amount金额值,你可以找下wp_post_meta这个'refund_order'和他相应的'shop_order'与_order_total太值:
if('refund_order'=> _refund_amount)!=('shop_order'=> _order_total):那么它是偏的.
if('refund_order'=> _refund_amount)==('shop_order'=> _order_total):那么它是正常的 (不是部分的).
笔记:
_order_total,wp_postmeta表中的项目具有负值,该值始终反映_refund_amount项目的正值.此_order_total值与相关父 'shop_order' => '_order_total'值无关.
仅当退款订单不是PARTIAL时,它才是相关父值 的相反(负)值.
'shop_order' => '_order_total'
wp_woocommerce_order_items和wp_woocommerce_order_itemmeta表格中,有关于订单中的产品和退款订单的相关详细数据......| 归档时间: |
|
| 查看次数: |
1732 次 |
| 最近记录: |