sslion
@sslion

Выбрать все товары имеющие скидку и только в наличии?

Появилась задача сделать в нашем интернет магазине страницу "Акции и скидки", на которой бы отображались товары только со скидкой и только имеющиеся в наличии. В левой колонке должно отображаться меню категорий товаров и только те категории, которые имеют скидку и есть в наличии. Т.е. если в категории "Подгузники" есть товары со скидкой, но этих товаров не в наличии, то пункт этой категории в меню отображаться не должен.
На данный момент в меню попадают категории содержащие товары со скидкой, но даже если этих товаров нет в наличии.
Вот эта страница Акции
Выборку пытаюсь сделать так:
$product_ids_on_sale = wc_get_product_ids_on_sale();
                            $args = array(
                                  'post_type' => 'product',
                                  'post_status '   => 'publish',
                                  'product_cat' => $slug,
                                  'post__in' => array_merge( array( 0 ), $product_ids_on_sale ),
                                  'meta_query' => array('relation' => 'AND',
                                        array(
                                            'key'     => 'availability_in_the_warehouse_1',
                                            'value'   => '0',
                                            'compare' => '>'
                                        ))
                                  );
                                $loop = new WP_Query( $args );

Но все равно выбираются все товары со скидкой, даже если их нет
  • Вопрос задан
  • 332 просмотра
Пригласить эксперта
Ответы на вопрос 2
@antoshadrobyshev
WordPress & Woocommerce developer
Не знаю, что за выборка у вас в мета запросе.
Чтобы исключить товары в 0 остатке мета запрос доже быть такой
'meta_query' => array(
        array(
            'key' => '_stock_status',
            'value' => 'instock'
        )
Ответ написан
Комментировать
sslion
@sslion Автор вопроса
По сути в моем первом посте действительно ошибка в фильтре, там фильтр по компании контрагенту = ID проекта, что есть ошибка. Поставил ID существующей компании, и начали отображаться сделки с этой компанией.
Но мне нужен фильтр по проекту. За это отвечает поле UF_CRM_1599206263
'INTERNAL_FILTER' => array('UF_CRM_1599206263' => $this->entityID),
не работает, даже не подгружается пустая табличка...
КАК СДЕЛАТЬ ЭТОТ ;%;№%:%: ФИЛЬТР????
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы