#wordpress #woocommerce #e-commerce #tribe-event-tickets
#wordpress #woocommerce #электронная коммерция #tribe-event-tickets
Вопрос:
Я пытаюсь определить, являются ли какие-либо товары в корзине покупок Woocommerce событиями или нет. tribe_is_event()
Функция, похоже, работает не так, как ожидалось, поскольку она всегда возвращает false . Я думаю, я неправильно понимаю его использование.
Далее я перебираю все элементы корзины и просто повторяю, является ли это событием или нет. Он всегда возвращает «Это обычный продукт», независимо от типа продукта.
add_action('woocommerce_before_checkout_form', function ($checkout) {
$items = WC()->cart->get_cart();
foreach ($items as $item => $values) {
$post_id = $values['data']->get_id();
// Why does this not work?
if(tribe_is_event($post_id)){
echo 'This is an event!';
}else{
echo 'This is normal product';
}
}
});
Я зарегистрировал $post_id
, чтобы убедиться, что это действительно идентификатор продукта, который я думаю. Я прочитал, что смог найти в Интернете об этой функции. Я чувствую, что это должно сработать, сообщая мне, является ли продукт событием.
Любая помощь была бы отличной 🙂
Комментарии:
1. Что вы получите, если просто запустите следующую строку кода с существующим идентификатором записи?
tribe_is_event( EXISTING POST ID );
Обычно вы можете решить проблемы такого рода, создавая свой код шаг за шагом и каждый раз проверяя, продолжает ли результат работать, таким образом, вы знаете, где что-то пошло не так2. @7uc1f3r, о котором я упоминал в случае, я зарегистрировал
$post_id
, чтобы убедиться, что он существует. Если я использую функцию с идентификатором post события, который на 100% существует как событие, я получаю false . Если вы просите меня сделать что-то еще, я прошу прощения!