Я делаю простой сайт электронной коммерции, используя плагин WooCommerce на WordPress. Я использую Paypal в качестве платежного шлюза . Когда пользователь покупает продукт из моего магазина и успешно выполняет платеж, WooCommerce автоматически изменяет статус заказа с 'pending'
на 'completed'
, но не меняет статус заказа .
Как я могу это достичь?
Это код фрагмента (который вы можете найти в документах wooCommerce):
/** * Auto Complete all WooCommerce orders. */ add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_complete_order'); function custom_woocommerce_auto_complete_order( $order_id ) { if ( ! $order_id ) { return; } $order = wc_get_order( $order_id ); $order->update_status( 'completed' ); }
Но этот фрагмент не работает для методов «BACS», «Pay on Delivery» и «Check». Это нормально для способов оплаты шлюзов Paypal и Credit Card.
Существует также бесплатный WordPress (woocommerce) бесплатный плагин, работающий со всеми способами оплаты, за исключением некоторых других способов оплаты шлюзов кредитной карты :
Автозаполнение оплаченных заказов (в зависимости от способов оплаты)
WooThemes – Заказы Autocomplete WooCommerce
С уважением