shortcode_wrapper('woocommerce_checkout', $atts); } /** * Output the checkout shortcode. * * @access public * @param array $atts * @return void */ function woocommerce_checkout( $atts ) { global $woocommerce; // Prevent cache $woocommerce->nocache(); // Show non-cart errors $woocommerce->show_messages(); // Check cart has contents if ( sizeof( $woocommerce->cart->get_cart() ) == 0 ) return; // Calc totals $woocommerce->cart->calculate_totals(); // Check cart contents for errors do_action('woocommerce_check_cart_items'); // Get checkout object $checkout = $woocommerce->checkout(); if ( empty( $_POST ) && $woocommerce->error_count() > 0 ) { woocommerce_get_template( 'checkout/cart-errors.php', array( 'checkout' => $checkout ) ); } else { $non_js_checkout = ! empty( $_POST['woocommerce_checkout_update_totals'] ) ? true : false; if ( $woocommerce->error_count() == 0 && $non_js_checkout ) $woocommerce->add_message( __( 'The order totals have been updated. Please confirm your order by pressing the Place Order button at the bottom of the page.', 'woocommerce' ) ); woocommerce_get_template( 'checkout/form-checkout.php', array( 'checkout' => $checkout ) ); } }