2014-09-24 22 views
12

Tôi muốn thực hiện một số thay đổi nếu phương thức thanh toán đã chọn là COD. Trên WC_Order hiện tại tôi đã sử dụngCách kiểm tra phương thức thanh toán trên đơn đặt hàng WooCommerce theo id?

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

để truy xuất tiêu đề. Nhưng tôi muốn kiểm tra đối với id (cod) vì chuỗi tiêu đề được dịch sang các ngôn ngữ khác nhau mà không làm cho nó trở thành một giải pháp tốt.

Có cách nào để truy xuất id trên WC_Order trong woocommerce không?

Trả lời

28

Mấu chốt bài meta cho phương thức thanh toán đơn giản là ID _payment_method

Vì vậy, nếu $order->payment_method không có những phương pháp kỳ diệu tại chỗ để có được điều đó tự động, bạn có thể lấy bài meta sử dụng WordPress truyền thống

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

cập nhật cho WooCommerce 3,0

$order->get_payment_method(); 
+0

cảm ơn bạn rất nhiều, đã làm việc một cách hoàn hảo. – belfort1

+0

Tốt để nghe. Đừng quên đánh dấu điều này là câu trả lời bằng cách nhấp vào hộp kiểm bên cạnh nó. – helgatheviking

+0

@helgatheviking Tôi có thể lấy thông tin thẻ tín dụng do khách hàng nhập trên trang cảm ơn không? –

2

Nếu bạn cần chính đối tượng cổng thanh toán, bạn có thể sử dụng chức năng wc_get_payment_gateway_by_order.

$payment_gateway = wc_get_payment_gateway_by_order($order); 
+1

THANK YOUUUUUUU !!!! Tôi đã cố gắng để tìm thấy điều này trong hai ngày mà không có bất kỳ manh mối cho đến khi tìm thấy điều này. Để sử dụng thêm khi sử dụng $ payment_gateway, hãy xem bài đăng trên diễn đàn sau: http://forum.wpde.org/onlineshop-mit-wordpress/139211-woocommerce-darstellung-bankverbindung-e-mail.html –

Các vấn đề liên quan