Добавьте собственный класс в таблицу списка заказов Woocommerce

Я хочу добавить собственный стиль в таблицу списка заказов для определенных строк на основе значения метаданных. Мой код отлично работает с устаревшей опцией хранения данных заказа. Однако при включенном HPOS фильтр вообще не срабатывает. Есть ли какой-либо аналогичный фильтр, который можно использовать, или единственный способ — использовать jQuery и вызывать API для каждой строки, чтобы получить эту информацию?

function addCssClassToOrderListRow($classes, $class, $post_id)
{
    if ('shop_order' === OrderUtil::get_order_type( $post_id ) && is_admin()) {
        $order = wc_get_order($post_id);

        $meta_value = $order->get_meta('my_meta_key', true);

        if (!empty($meta_value)) {
            // Add a custom class
            $classes[] = 'custom_class';
        }
    }

    return $classes;
    
}
add_filter('post_class', 'addCssClassToOrderListRow', 10, 3);
Как убрать количество товаров в категории WooCommerce
Как убрать количество товаров в категории WooCommerce
По умолчанию WooCommerce показывает количество товаров рядом с категорией, как показано ниже.
0
0
67
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать крючок woocommerce_shop_order_list_table_order_css_classes вот так

function addCssClassToOrderListRow($classes, $order){
    $meta_value = $order->get_meta('my_meta_key', true);

    if (!empty($meta_value)) {
        // Add a custom class
        $classes[] = 'custom_class';
    }

    return $classes;
}

add_filter( 'woocommerce_shop_order_list_table_order_css_classes', 'addCssClassToOrderListRow', 10, 2 );

Другие вопросы по теме

Измените порядок стран в полях стран WooCommerce Checkout, сохраняя синхронизацию состояний
Скрытие наложенного платежа, если промежуточный итог меньше определенной суммы в WooCommerce, проблема со свойством «промежуточный итог»
Woocommerce Невозможно установить телефон для выставления счетов как «обязательный»
Добавьте пользовательский Metabox в заказы администратора WooCommerce с включенным HPOS
Настройте отдельный продукт WooCommerce с помощью дополнительного поля ввода
Как получить заголовок страницы магазина Woocommerce?
Удалить артикул продукта из сведений о заказе в уведомлениях по электронной почте WooCommerce
Обрабатывать возвраты общих расходов клиентов за определенный период в WooCommerce
Отображение уведомления при оформлении заказа WooCommerce, если элемент подписки находится в корзине для активного подписчика
Как отправить код отслеживания заказа WooCommerce с помощью SMS

Похожие вопросы

Измените порядок стран в полях стран WooCommerce Checkout, сохраняя синхронизацию состояний
Woocommerce Невозможно установить телефон для выставления счетов как «обязательный»
Подключение приложения к Meta Business Manager – чью учетную запись использовать: мою компанию или клиентов?
Добавьте пользовательский Metabox в заказы администратора WooCommerce с включенным HPOS
Настройте отдельный продукт WooCommerce с помощью дополнительного поля ввода
Как я могу добавить скрипт диспетчера тегов Google на экран WordPress Edit.php?
Как получить заголовок страницы магазина Woocommerce?
Docker Compose для контейнеров WordPress не может смонтировать локальные тома с путями ${PWD} в Ubuntu/AWS
Ошибка типа: не удалось выполнить «arrayBuffer» для «Blob»: незаконный вызов — вставить большой двоичный объект в базу данных
Удалить артикул продукта из сведений о заказе в уведомлениях по электронной почте WooCommerce