Вывод количества товаров в категории
Добрый день!
Может кто знает, как вывести количество товаров в категории?
Нашел такое решение, но почему то не работает (
Может кто знает, как вывести количество товаров в категории?
Нашел такое решение, но почему то не работает (
<?php
if (empty($parent)) {$parent = $modx->resource->id;}
$pids = array_merge(array($parent), $modx->getChildIds($parent));
$ids = array();
$q = $modx->newQuery('msProduct');
$q->where(array('class_key' => 'msProduct','parent:IN' => $pids,'published' => 1,'deleted' => 0));
$q->select('`msProduct`.`id`');
if ($q->prepare() && $q->stmt->execute()) {
$ids = $q->stmt->fetchAll(PDO::FETCH_COLUMN);
}
$q = $modx->newQuery('msProduct');
$q->leftJoin('msCategoryMember', 'Member', '`Member`.`product_id` = `msProduct`.`id`');
$q->where(array('class_key' => 'msProduct','Member.category_id:IN' => $pids,'published' => 1,'deleted' => 0));
$q->select('`msProduct`.`id`');
if ($q->prepare() && $q->stmt->execute()) {
$ids2 = $q->stmt->fetchAll(PDO::FETCH_COLUMN);
if (!empty($ids2)) {
$ids = array_unique(array_merge($ids, $ids2));
}
}
return count($ids);
Комментарии: 2
Хотя нет, работает, но только при нахождении в этой категории, вывожу не кэшированным в pdomenu. А на главной везде 0 показывает, а если перейти в категорию, где есть товары, показывает у вес то количество, где я нахожусь.
У сниппета есть параметр &parent, попробуйте в вызове на вашей главной задать Id общего каталога. Типа так:
[[snippetName? &parent=`2`]]
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.