Magento 1 - получить идентификатор категории из идентификатора продукта

В magento, как получить идентификатор категории каждого продукта из его идентификатора продукта.

   $items    = $request->getAllItems();
    $c           = count($items); 

    for ($i = 0; $i < $c; $i++) {
        if ($items[$i]->getProduct() instanceof Mage_Catalog_Model_Product) {

            if ($items[$i]->getProduct()->getId()) {
               $this->_dhlAllowed    = false;
              }
        }
    }

Здесь $items[$i]->getProduct()->getId() возвращает идентификатор продукта. Мне нужен идентификатор категории.


person Elamurugan    schedule 10.12.2010    source источник
comment
$items[$i]->getProduct()->getCategoryIds() ; Это возвращает идентификатор категории на одном сервере, но не на другом сервере. Есть идеи?   -  person Elamurugan    schedule 11.12.2010
comment
Пробовали ли вы переиндексировать плоские таблицы категорий на сервере? Такие странности обычно связаны с устаревшим (или поврежденным) индексом.   -  person mcmil    schedule 11.12.2010


Ответы (3)


Mage::registry('current_product')->getCategoryId();

таким образом можно получить идентификатор категории текущего продукта.

person R T    schedule 03.07.2012

предположим, если вам нужны все идентификаторы категорий из текущего идентификатора продукта, который вы можете получить из

Mage::registry('current_product')->getCategoryIds();

это может помочь тебе

person Keyur Shah    schedule 03.10.2013

person    schedule
comment
count($categoryIds) должно быть >= 1 - person aki; 05.01.2016