Задать вопрос
@asunaro_ru

Как в Woocommerce сделать product query по статусу 'instock' без 'backorders'?

В магазине используется три статуса: 'in stock', 'out of stock', 'avaliable for backordrers'. Суть в том, что товары 'in stock' и 'avaliable for backordrers' можно положить в корзину, а 'out of stock' - нет. Задача выгрузить в XML товары, которые только 'instock', а 'avaliable for backordrers' не выгружать. Проблема в том, что статус 'avaliable for backordrers' возвращает значение "instock", как и для 'in stock' товаров, соответственно, код:
$query = array(
    'post_type' => 'product',
    'posts_per_page' => -1,
    'meta_query' => array(
        array(
            'key' => '_stock_status',
            'value' => 'instock'
        )
    )
);
$wp_query = & new WP_Query($query);
while ($wp_query->have_posts()) : $wp_query->the_post();

выгружает все эти товары. Как исключить из выгрузки 'avaliable for backordrers' товары?
  • Вопрос задан
  • 849 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фулстек-разработчик расширенный
    20 месяцев
    Далее
  • beONmax
    WordPress – с нуля до Профи
    1 неделя
    Далее
  • beONmax
    Профессия WordPress разработчик
    3 месяца
    Далее
Решения вопроса 1
@asunaro_ru Автор вопроса
Если кому-то понадобится...
$query = array(
    'post_type' => 'product',
    'posts_per_page' => -1,
    'meta_query' => array(
        array(
            'key' => '_stock_status',
            'value' => 'instock'
        ),
        array(
            'key' => '_backorders',
            'value' => 'no'
        ),
    )
);
$wp_query = & new WP_Query($query);
while ($wp_query->have_posts()) : $wp_query->the_post();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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