Отображение товаров подгрупп в родительском разделе

#
Отображение товаров подгрупп в родительском разделе
Решил поделиться решением, т.к. всю ночь рылся по форуму и ничего толкового не смог найти.

Т.к. метод ShowShop() может принимать в качестве $param['current_group_id'] массив групп, то можно сделать следующее:

$par['shop_groups_parent_id'] = $GLOBALS['shop_item_path']['group']; // Тут мы определяем родительскую
$rows=$shop->GetAllGroups($current_shop_id, $par); //категорию для метода GetAllGroups() как текущую,
//а здесь вызываем этот метод и пишем результат в массив $rows

$gr = array(); // будет нашим массивом дочерних групп
$i=0; // счетчик
foreach ($rows as $row)
{
$gr[$i] = $row['shop_groups_id']; // записываем в массив
$i++;
}

$param['current_group_id'] = $gr; // Присваиваем текущей группе массив групп и
$shop->ShowShop($current_shop_id, $xsl_catalog, $param, $external_propertys); // вызываем ShowShop()


Решение возможно не самое грамотное - не гуру РНР, но работает и, как показали тесты, работает хорошо.
#
Re: Отображение товаров подгрупп в родительском разделе
kuzzmi, ваша задача - частный случай другого решения, см. http://www.hostcms.ru/forums/17/4532/page-3/ последний пост на странице.
Этот способ легко трансформируется в то что нужно вам, см. в той же теме на первой странице:
Xsanders писал(а):
Но как заставить выводить товары из-под категорий в категории, даже при наличии в ней (в категории) товаров?

Kotoff писал(а):

Поменять условие:
if ($count_groups['count_items'] == 0 && $count_groups['count_all_items'] > 0) {
Заказов не беру. Консультирую редко.
Авторизация