Добавить новость


Новости сегодня

Новости от TheMoneytizer

Woocommerce изменить запрос выборки товаров

Проблема такая, есть товары со статусом "В наличии", а есть "Нет в наличии".
На страницах каталога товары "нет в наличии" не отображаются. Но это сделано как-то по кривому. Выводиться должно 12 товаров на страницу, но выводится, например, 8. Посмотрел запросы в базу данных - там всё верно лимит 0, 12. Но сам запрос не учитывает, что в выборку попадают товары со статусом "нет в наличии". Они видимо, потом как-то отсекаются и на странице оказывается не 12 товаров, а меньше.
Так вот, подскажите, где формируется запрос в базу данных, чтобы можно было добавить нужные исключения?
Сейчас запрос такой:
Код:

SELECT SQL_CALC_FOUND_ROWS  w9p_posts.ID FROM w9p_posts  INNER JOIN ( SELECT post_id, min( meta_value+0 ) price FROM w9p_postmeta WHERE meta_key='_price' GROUP BY post_id ) as price_query ON w9p_posts.ID = price_query.post_id  WHERE 1=1  AND (
  w9p_posts.ID NOT IN (
                                SELECT object_id
                                FROM w9p_term_relationships
                                WHERE term_taxonomy_id IN (1823,1825)
                        )
) AND w9p_posts.post_type = 'product' AND (w9p_posts.post_status = 'publish' OR w9p_posts.post_status = 'private') GROUP BY w9p_posts.ID ORDER BY  price_query.price ASC, w9p_posts.ID ASC  LIMIT 0, 12

Хочу поменять на такой:
Код:

SELECT SQL_CALC_FOUND_ROWS  w9p_posts.ID FROM w9p_posts
LEFT JOIN (SELECT post_id, `meta_value` as stock_status FROM w9p_postmeta WHERE meta_key='_stock_status' GROUP BY post_id)
          AS w_stock ON w9p_posts.ID = w_stock.post_id
INNER JOIN ( SELECT post_id, min( meta_value+0 ) price FROM w9p_postmeta WHERE meta_key='_price' GROUP BY post_id ) as price_query ON w9p_posts.ID = price_query.post_id  WHERE 1=1  AND (
  w9p_posts.ID NOT IN (
                                SELECT object_id
                                FROM w9p_term_relationships
                                WHERE term_taxonomy_id IN (1823,1825)
                        )
) AND w_stock.stock_status = 'instock' AND w9p_posts.post_type = 'product' AND (w9p_posts.post_status = 'publish' OR w9p_posts.post_status = 'private') GROUP BY w9p_posts.ID ORDER BY  price_query.price ASC, w9p_posts.ID ASC  LIMIT 0, 12

Читайте на сайте


Smi24.net — ежеминутные новости с ежедневным архивом. Только у нас — все главные новости дня без политической цензуры. Абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. Мы не навязываем Вам своё видение, мы даём Вам срез событий дня без цензуры и без купюр. Новости, какие они есть —онлайн с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии. Smi24.net — живые новости в живом эфире! Быстрый поиск от Smi24.net — это не только возможность первым узнать, но и преимущество сообщить срочные новости мгновенно на любом языке мира и быть услышанным тут же. В любую минуту Вы можете добавить свою новость - здесь.




Новости от наших партнёров в Вашем городе

Ria.city
Музыкальные новости
Новости России
Экология в России и мире
Спорт в России и мире
Moscow.media










Топ новостей на этот час

Rss.plus