productCollection

В shopViewHelper'е есть такой метод:  productsCount(). В него передается hash и он отбирает товары по этому хешу и возвращает их количество. 

Вопрос: как получить кол-во всех товаров в наличии? (не просто всех товаром в магазине, а именно тех, что на данный момент в наличии), какой hash передать?)

Может быть есть где-то примеры использования productCollection, кроме описания перед определением класса?)

2 ответа

  • 1

    Можно попробовать так

    $collection = new shopProductsCollection();
    $collection->addWhere('(p.count > 0 || p.count IS NULL)');
    $count = $collection->count();

    Хотя, если задача только посчитать кол-во товаров в наличии, можно же просто запросом

    $model = new waModel();
    $sql =<<<SQL
    SELECT COUNT(*) FROM shop_product
    WHERE count > 0 || count IS NULL
    SQL; 
    $count = $model->query($sql)->fetchField();

    • +1
      Dmitry Dmitry 21 мая 2021 15:06 #

      Дмитрий, спасибо) Про то, как это сделать в php-коде я понимаю)

      А вот как это в шаблоне темы дизайна без своего хелпера или без плагина сделать с помощью

      {$wa->shop->productsCount('тут что-то')}

      не догоняю...


      Если кому интересно, как вариант можно создать динамическую категорию, отобрав в нее товары в наличии и считать кол-во товаров в ней вот так {$wa->shop->productsCount('category/id_категории')}

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите