Фильтрация по категориям в Magento 1.4 - PullRequest
2 голосов
/ 25 марта 2010

У меня есть специальный модуль, который я сделал, чтобы показать избранные товары на главной странице. Я настроил его, чтобы показывать товары, которые относятся к категории «рекомендуемых». Он хорошо работает в 1.3, но теперь в 1.4 я получаю следующую ошибку:

SQLSTATE [42S22]: столбец не найден: 1054 Неизвестный столбец «e.category_ids» в «предложении where» Вот мой код:

$_productCollection = Mage::getResourceModel('reports/product_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('visibility', $visibility)
    ->addAttributeToFilter('category_ids',array('finset'=>$featuredcategory))
    $_productCollection->load();

Избранная категория указана от администратора.

Кто-нибудь есть идеи, что может быть?

Ответы [ 2 ]

2 голосов
/ 07 апреля 2010

Просто чтобы уточнить ответ.Вы можете заставить его работать, сначала определив выбранную категорию:

$_featcategory = Mage::getModel('catalog/category')->load($featuredcategory); 

, а затем используя обычный фильтр категорий:

->addCategoryFilter($_featcategory)
2 голосов
/ 25 марта 2010

Похоже, что reports/product_collection Модель больше не имеет атрибута category_ids.

$_productCollection = Mage::getResourceModel('reports/product_collection')
    ->addAttributeToSelect('*');
$_productCollection->load();
    foreach($_productCollection as $item)
    {
        var_dump(array_keys($item->getData()));
        exit;
    }

Вам понадобится найти другую модель, чтобы получить необходимую информацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...