如果选择的付款方式是 COD,我想进行一些更改。在我使用过的现有 WC_Order 上
($order->payment_method_title == 'Cash On Delivery' ? ... : ... );
检索标题。但我想检查 id (cod),因为标题字符串被翻译成不同的语言,这并不是一个好的解决方案。
有没有办法在 woocommerce 中检索 WC_Order 上的 id?
如果选择的付款方式是 COD,我想进行一些更改。在我使用过的现有 WC_Order 上
($order->payment_method_title == 'Cash On Delivery' ? ... : ... );
检索标题。但我想检查 id (cod),因为标题字符串被翻译成不同的语言,这并不是一个好的解决方案。
有没有办法在 woocommerce 中检索 WC_Order 上的 id?
付款方式 ID 的后元键很简单_payment_method
因此,如果$order->payment_method
没有适当的魔术方法来自动获取它,您可以使用传统的 WordPress 检索帖子元
get_post_meta( $order->id, '_payment_method', true );
WooCommerce 3.0 更新
$order->get_payment_method();
如果您想要付款方式的标题,您可以执行以下操作:
$order = new WC_Order( $order_id );
$payment_title = $order->get_payment_method_title();
这将返回在 Woocommerce > Payment methods 中设置的字符串,例如:Paypal
。
这里有一些非常有用的参考资料和文档,可以帮助您使用 WooCommerce 做任何您想做的事情。
干杯。
如果您需要支付网关对象本身,您可以使用该wc_get_payment_gateway_by_order
功能。
$payment_gateway = wc_get_payment_gateway_by_order( $order );