Как направить ссылку на набор атрибутов? - PullRequest
0 голосов
/ 24 декабря 2009

Я создал атрибуты; «Магазин по типу» и «Магазин по цвету». Они прекрасно работают в рамках многоуровневой навигации и расширенного поиска. Я разработал графику и разместил ее на главной странице и хотел бы дать ссылку на соответствующие продукты соответствующего атрибута. Обыскивал паутину, но пока безуспешно.

Если прямого пути нет, то следующим способом будет создание страниц cms и прямая ссылка на них. Как я могу отобразить продукты, которые назначены определенному атрибуту? В частности, «множественный выбор» типов.

Я знаю, что вы, ребята, предпочитаете хотя бы несколько попыток, но, как уже упоминалось, играть с ним не повезло. Буду признателен за отправную точку.

С праздником!

Редактировать: мне удалось собрать этот код, в котором перечислены все продукты, присвоенные указанному идентификатору категории. Попытка отфильтровать его там, где отображаются только продукты с таким же атрибутом, но пока безуспешно. Есть идеи?

<?php
$cat_id = 123; // category id
$category = Mage::getModel('catalog/category')->load($cat_id);

$_products = $category->getProductCollection()
->addAttributeToSelect('shop_by_color');

if (($this->getProductCollection()) && $_products->getSize()): ?>

Кстати, $cat_id - это подкатегория root. Есть ли более простой способ указать на него, чем использовать прямой идентификационный номер?

1 Ответ

0 голосов
/ 26 декабря 2009

Я не знаю, какой именно ответ вы ищете, но вы должны изменить

$_products = $category->getProductCollection()->addAttributeToSelect('shop_by_color');

до

$_products = $category->getProductCollection()
->addAttributeToSelect('shop_by_color')
->addAttributeToFilter(array('attribute'=>'shop_by_color', 'in'=>array('red', 'blue', ...)));

, так что в нем перечислены только продукты, где их shop_by_color является одной из заданных констант. Это зависит от вас, чтобы вывести их из пути URL или строки запроса, и вы получите свою базу для динамических страниц, показывающих только продукты, соответствующие одному из цветов ввода.

...