Нашел решение! Вся фишка в том, что если на одной странице расположены шорткоды корзины и оформления, то при пустой корзине (если переходить на страницу оформления срабатывает редирект), таким образом получается циклический редирект. Исправляется в функции
wc_template_redirect(), который расположен в
\woocommerce\includes\wc-template-functions.php
удаляется вот этот кусок
// When on the checkout with an empty cart, redirect to cart page
elseif ( is_page( wc_get_page_id( 'checkout' ) ) && sizeof( WC()->cart->get_cart() ) == 0 && empty( $wp->query_vars['order-pay'] ) && ! isset( $wp->query_vars['order-received'] ) ) {
wp_redirect( get_permalink( wc_get_page_id( 'cart' ) ) );
exit;
}
подробно объясняется с решением на форуме
тут