Отображение товаров подкатегорий

#
Отображение товаров подкатегорий
Родительская категория (0)

  Подкатегория 1 (n)
  Товары подкатегории 1

  Подкатегория 2 (n)
  Товары подкатегории 2

-----------------------------------
В родительской 0 товаров
В подкатегориях n товаров.
-----------------------------------

Реализовано на Hostcms 5. Требуется реализовать на 6.

В типовой динамической 5, вставлен соответствующий код.
У категорий есть дополнительное св-во, следовательно в динамической проверка идет, если стоит 1 в св-ве, то показывается соответствующий xsl (показ товаров подкатегорий)

В начале кода тип. динам.
Функция получения подгрупп


function getAllSubGroups($start_groups_id, $current_shop_id, $shop, $groups = array())
{
    // получим число групп и элементов в текущей группе и ее подгруппах.
   // подробнее см. API
   $count_groups = $shop->GetCountItemsAndGroups($start_groups_id, $current_shop_id, true);

   // если есть подгруппы
    if ($count_groups['count_groups'] > 0) {
      
       // получим ресурс с подгруппами текущей группы
        $resource = $shop->GetGroups($current_shop_id, $start_groups_id);
        // обработаем его
      while ($row = mysql_fetch_assoc($resource)) {
      
           // итеративно вызовем функцию getAllSubGroups на случай если у рассматриваемой группы
         // тоже есть подгруппы
            $groups = getAllSubGroups($row['shop_groups_id'], $current_shop_id, $shop, $groups);
         // добавим в массив группу id рассматриваемой группы  
            $groups[] = $row['shop_groups_id'];
         
        }
    }
   
    return $groups;
}


в конце кода перед $shop->ShowShop

// Получаем текущую группу
      $param['shop_groups_id'] = $GLOBALS['shop_item_path']['group'];
      //Указываем нужное св-во: 1 - первое доп.св-во, 2 - второе доп.св-во и т.д.
      $param['shop_properties_group_id'] = 2;
      //Получаем значение выбранного доп.св-ва для текущей группы
      $property_row1 = $shop->GetPropertiesGroupValue($param);

if ($property_row1['shop_properties_group_value_value'] == 1)
      {
         // получим число групп и элементов в текущей группе и ее подгруппах.
         // подробнее см. API
         $count_groups = $shop->GetCountItemsAndGroups($GLOBALS['shop_item_path']['group'], $current_shop_id);
                          
         // если в текущей группе элементов нет, а в подгруппах есть
         if ($count_groups['count_items'] == 0 && $count_groups['count_all_items'] >= 0) {

            // передаим в xml признак того, что вывод будет происходить из подгрупп
            $external_propertys['show_items_from_subgroups'] = 1;
            $external_propertys['cur_group'] = $GLOBALS['shop_item_path']['group'];
            
               if ($count_groups['count_groups'] > 0) {
                  // если у текущей группы есть подгруппы:

                  //то создаем массив
                  $groups = array();

                  //заполняем его деревом подгрупп
                  $groups = getAllSubGroups($GLOBALS['shop_item_path']['group'], $current_shop_id, $shop);
                  // добавляем в массив текущую группу
                  $groups[] = $GLOBALS['shop_item_path']['group'];

                  // передаем массив с подгруппами
                  $param['current_group_id'] = $groups;

               }
         }
            $param['items_on_page'] = 1000;
            //Установка xsl шаблона
            $xsl_catalog = 'КаталогТоваровПодкатегорий';
      }

$shop->ShowShop($current_shop_id, $xsl_catalog, $param, $external_propertys);


в результате отображались товары подгрупп у тех групп, где в св-ве стояла 1.

Как реализовать все это на 6 версии?

Для проверки соответствующего св-ва у группы придется использовать $linkedObject = Core_Entity::factory('Shop_Group_Property_List', $shop_id и queryBuilder ?
Что можно использовать вместо $shop->GetGroups($current_shop_id, $start_groups_id); ?
Вместо параметра show_items_from_subgroups, что можно использовать?

Заранее спасибо.
Модератор
#
Re: Отображение товаров подкатегорий
1. Смотрите все примеры с контроллеров: http://www.hostcms.ru/forums/2/7122/
2. Смотрите все примеры работы с доп. св-вами http://www.hostcms.ru/forums/2/7143/
Получать конкретное св-во конкретного объекта нужно просто через $oProeprty.
3. Получаете нужные подгруппы просто через ORM
#
Re: Отображение товаров подкатегорий
Mihey2007 удалось реализовать!?Не поделишься?
#
Re: Отображение товаров подкатегорий
Mihey2007,
удалось реализовать!?Не поделишься?
Модератор
#
Re: Отображение товаров подкатегорий
#
Re: Отображение товаров подкатегорий
#
Re: Отображение товаров подкатегорий
HostCMS писал(а):
мне вот так вот нужно,как же мне быть уважаемая техническая поддержка?
Модератор
#
Re: Отображение товаров подкатегорий
style009,
http://www.hostcms.ru/forums/rules/
с п. 2.4 и 2.3 ознакомьтесь, пожалуйста.
#
Re: Отображение товаров подкатегорий
HostCMS писал(а):
ознакомился,спасибо за ответ,очень помогло
Модератор
#
Re: Отображение товаров подкатегорий
Пожалуйста.
Авторизация