в вашем вопросе ... Это поможет людям легко найти эту тему.
аюсь заставить мой код работать. Ищу часы сейчас. Я нашел похожие вопросы, такие какэтот, Но, к сожалению, похоже, никто не нашел решения.
В моем собственном плагине я хочу добавить определенный элемент в корзину WC и перенаправить пользователя прямо на оформление заказа. Как вошедший в систему пользователь работает как брелок, но для гостей он показывает пустую страницу при оформлении заказа (шорткод woocommerce_checkout, похоже, ничего не возвращает в этом случае). Поэтому я пришла с проверкой, если корзина пуста. Видимо, это потому, что на «странице корзины» отображается «В корзине еще нет товаров».
В коде я проверяю, пуста ли корзина, но говорит, что нет!
Вот мой код:
if(!$wooID = $wpdb->get_var("SELECT wooID FROM ".$wpdb->prefix."ceb_events WHERE id = $event")) die("ERROR GETTING WOOID");
WC()->cart->empty_cart();
if(!WC()->cart->add_to_cart( $wooID, 1 )) die("CART GOT NOT UPDATED. THERE IS AN ERROR 1.");
if(WC()->cart->get_cart_contents_count() == 0) die("CART GOT NOT UPDATED. THERE IS AN ERROR 2.");
//Here follows the redirect to checkout page
Код работает без ошибок. И это работает на 100% как зарегистрированный пользователь / администратор. Только не в качестве гостя, даже если я позволил гостю оформить заказ в настройках woocommerce.