Как проверить в какой категории находится товар на странице checkout?

В вопросе упоминается категория товара на странице оформления заказа (checkout) в контексте WordPress. Варианты решения этой задачи могут зависеть от конкретной конфигурации вашей темы и плагинов, однако я предлагаю несколько способов, чтобы помочь вам определить категорию товара на странице оформления заказа.

1. Использование WooCommerce:
Если вы используете плагин WooCommerce для управления вашими магазинами на WordPress, то проверка категории товара на странице оформления заказа может быть достаточно простой. WooCommerce предоставляет набор функций, которые можно использовать, чтобы получить информацию о товарах и связанных с ними категориях.
Вот пример кода, который вы можете использовать в файле functions.php вашей активной темы WordPress:

   // Проверяем текущую страницу
   if (is_checkout()) {
     global $woocommerce;
    
     // Получаем идентификаторы товаров из текущего заказа
     $order_id = $woocommerce->session->get('order_awaiting_payment');
     $order = wc_get_order($order_id);
     $items = $order->get_items();
    
     // Перебираем товары и выводим их категории
     foreach ($items as $item) {
       $product_id = $item->get_product_id();
       $product = wc_get_product($product_id);
    
       // Получаем категории товара
       $categories = wp_get_post_terms($product_id, 'product_cat', array('fields' => 'names'));
    
       // Выводим информацию о категории 
       echo 'Категория(и) товара: ' . implode(', ', $categories) . '<br>';
     }
   }

Этот код проверяет, является ли текущая страница страницей оформления заказа (checkout). После этого он получает идентификаторы товаров, связанных с текущим заказом, и перебирает каждый товар, получая и выводя список категорий, к которым он относится.

2. Использование пользовательских полей:
Если вы используете пользовательские поля (custom fields) для записей товаров в своей теме или плагинах, то вы можете добавить дополнительное пользовательское поле, в котором будет указана категория товара. Это можно сделать, например, с помощью плагина Advanced Custom Fields.
После добавления пользовательского поля с информацией о категории товара, вы можете получить эту информацию на странице оформления заказа, используя следующий код:

   // Проверяем текущую страницу
   if (is_checkout()) {
     global $woocommerce;
    
     // Получаем идентификаторы товаров из текущего заказа
     $order_id = $woocommerce->session->get('order_awaiting_payment');
     $order = wc_get_order($order_id);
     $items = $order->get_items();
    
     // Перебираем товары и выводим информацию о категории
     foreach ($items as $item) {
       $product_id = $item->get_product_id();
    
       // Получаем значение пользовательского поля с категорией
       $category = get_field('category', $product_id);
    
       // Выводим информацию о категории
       echo 'Категория товара: ' . $category . '<br>';
     }
   }

В данном примере мы получаем идентификаторы товаров из текущего заказа и перебираем каждый товар. Затем мы используем функцию get_field() из плагина Advanced Custom Fields для получения значения пользовательского поля "category". Далее отобразим информацию о категории на странице оформления заказа.

Оба этих варианта помогут вам проверить категорию товара на странице оформления заказа в WordPress. Выберите подходящий вариант в зависимости от ваших потребностей и конфигурации вашего сайта.