То, что мы пытаемся сделать, кажется достаточно простым, мы хотим показать популярные продукты из каждой категории в нашем меню.Мы рассчитываем получить 5 таких продуктов, поскольку именно для этого предназначен пользовательский интерфейс.Мы бы хотели, чтобы они были отсортированы по популярности, и я считаю, что это число просмотров продукта в Magento.
Во многих случаях запрашиваемая категория меню не имеет продуктов для себя.Таким образом, он должен помочь в продвижении товаров для детей.Пример одной ветки нашей разметки категории:
- Мужская, № 2 (без предметов)
- Рубашки, № 5 (с предметами)
- Аксессуары, #6 (есть предметы)
- Штаны, # 7 (есть предметы)
- И т.д., # 8 (есть предметы)
Что этоВ настоящее время код возвращает один и тот же список популярных продуктов независимо от категории, которую мы передаем в фильтр.Удаление -> addCategoryFilter (...) эффективно возвращает те же результаты.Я подозреваю, что если мы сможем решить, как фильтровать по категориям, все остальное встанет на свои места.
$storeId = 1;
$category; // Category Object for id = 2 passed to this code
$productCount = 5;
$products = Mage::getResourceModel('reports/product_collection')
->addOrderedQty()
->addAttributeToSelect('*')
->addAttributeToSelect(array('name','small_image'))
->setStoreId($storeId)
->addStoreFilter($storeId)
->addCategoryFilter($category)
->addViewsCount()
->setPageSize($productCount);
Мы попробовали несколько вариантов этого.Я не уверен, учитывает ли метод addCategoryFilter (...) дочерние категории или нет.Если нет, то это должно быть достаточно просто для запроса и решения.Конечно, в нынешнем виде он всегда возвращает одни и те же продукты без фильтрации по категориям ... обо всем по порядку.
Running Magento 1.4.0.1
Быстрый просмотрв данных для продуктов показаны эти ключи в $ products-> getFirstItem () -> getData ():
Array
(
[0] => entity_id
[1] => entity_type_id
[2] => attribute_set_id
[3] => type_id
[4] => sku
[5] => has_options
[6] => required_options
[7] => created_at
[8] => updated_at
[9] => name
[10] => url_key
[11] => gift_message_available
[12] => meta_title
[13] => meta_description
[14] => image
[15] => small_image
[16] => thumbnail
[17] => custom_design
[18] => page_layout
[19] => options_container
[20] => url_path
[21] => image_label
[22] => thumbnail_label
[23] => small_image_label
[24] => description
[25] => short_description
[26] => meta_keyword
[27] => custom_layout_update
[28] => weight
[29] => price
[30] => special_price
[31] => cost
[32] => news_from_date
[33] => news_to_date
[34] => special_from_date
[35] => special_to_date
[36] => custom_design_from
[37] => custom_design_to
[38] => exclusive
[39] => size
[40] => color
[41] => status
[42] => visibility
[43] => is_imported
[44] => tax_class_id
[45] => enable_googlecheckout
[46] => is_recurring
[47] => is_salable
[48] => stock_item
)
К сожалению, no category_ids