2014-09-24 4 views
12

Desidero apportare alcune modifiche se il metodo di pagamento scelto è COD. Su WC_Order esistente ho utilizzatoCome verificare il metodo di pagamento su un ordine WooCommerce con ID?

($order->payment_method_title == 'Cash On Delivery' ? ... : ...); 

per recuperare il titolo. Ma mi piacerebbe verificare l'id (cod) perché la stringa del titolo viene tradotta in lingue diverse che non lo rendono una buona soluzione.

C'è un modo per recuperare l'id su un WC_Order in woocommerce?

risposta

28

La chiave posta meta per l'ID metodo di pagamento è semplicemente _payment_method

Quindi, se $order->payment_method non ha i metodi magici in atto per ottenere che automaticamente, è possibile recuperare il palo meta utilizzando WordPress tradizionale

get_post_meta($order->id, '_payment_method', true); 

Aggiornamento per WooCommerce 3,0

$order->get_payment_method(); 
+0

grazie mille, ha funzionato perfettamente. – belfort1

+0

Buono a sapersi. Non dimenticare di contrassegnarlo come risposta facendo clic sulla casella accanto. – helgatheviking

+0

@helgatheviking posso ottenere informazioni sulla carta di credito inserite dal cliente sulla pagina di ringraziamento? –

2

Se è necessario l'oggetto gateway di pagamento stesso, è possibile utilizzare la funzione wc_get_payment_gateway_by_order.

$payment_gateway = wc_get_payment_gateway_by_order($order); 
+1

GRAZIE YOUUUUUUU !!!! Ho cercato di trovare questo per due giorni senza alcun indizio fino a trovare questo. Per ulteriori informazioni sull'utilizzo di $ payment_gateway, guarda il seguente post sul forum: http://forum.wpde.org/onlineshop-mit-wordpress/139211-woocommerce-darstellung-bankverbindung-e-mail.html –