Woocommerce бронирования автоматически заполнить закон при частичной оплате - PullRequest
0 голосов
/ 28 июня 2019

Я использую Woocommerce с Woocommerce Bookings и WooCommerce Депозитами, чтобы арендовать вещи, и я прошу 50% депозита.Поскольку я запрашиваю только 50% депозита, устав заказа оплачивается частично, поэтому связанное бронирование для каждого заказа не завершено, и, поскольку они не завершены, они не будут отображаться в календаре…

Итак, я 'я пытаюсь автоматически завершить бронирование, когда статус заказа «Частично оплачен», изменив этот официальный код (https://docs.woocommerce.com/document/bookings-snippets/#section-7),, но я не знаю, почему мне не удается заставить его работать!

function set_autoconfirm_booking_0619( $order_id ) {

    // Get the order, then make sure its payment method is COD.
    $order = wc_get_order( $order_id );
    $order_status = $order->get_status(); 
    if ( 'partial-payment' == $order_status ) {
        return;
    }
    // Call the data store class so we can get bookings from the order.
    $booking_data = new WC_Booking_Data_Store();
    $booking_ids  = $booking_data->get_booking_ids_from_order_id( $order_id );
    // If we have bookings go through each and update the status.
    if ( is_array( $booking_ids ) && count( $booking_ids ) > 0 ) {
        foreach ( $booking_ids as $booking_id ) {
            $booking = get_wc_booking( $booking_id );
            $booking->update_status( 'complete' );
        }
    }
}
add_action( 'woocommerce_order_status_processing', 'set_autoconfirm_booking_0619', 20 );

У кого-нибудь есть идея?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...