Фильтры атрибутов на основе Magento Ajax

Мне нужно разместить раскрывающиеся списки, которые будут связаны друг с другом, например, Марка грузовика, Модель грузовика, Годы выпуска.

Таким образом, для бренда будет один раскрывающийся список. который содержит все параметры атрибутов Truck Brands. После выбора марки появится другое раскрывающееся меню, содержащее параметры атрибутов модели грузовика, но отфильтрованные для этой конкретной марки. После выбора модели появится раскрывающийся список лет, содержащий отфильтрованные годы для этой марки и модели. Я новичок в Magento, и я могу получить атрибуты и их параметры через php, используя

  $attributeId = Mage::getResourceModel('eav/entity_attribute')
 ->getIdByCode('catalog_product','attribute_code_here');
  $attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId);
  $attributeOptions = $attribute ->getSource()->getAllOptions();

Но я не получаю отфильтрованные параметры атрибута, подходящие для первого атрибута. и специально используя ajax.


person Asif    schedule 11.02.2014    source источник
comment
вам требуются зависимые атрибуты magento..?? или просто следующая опция должна появиться после выбора одной опции..??   -  person Pankaj    schedule 17.02.2014
comment
ну атрибуты не зависимы. но мне нужны отфильтрованные атрибуты. например, есть 10 вариантов одного атрибута и 10 для следующего атрибута. Но после выбора 1-го атрибута второй устанавливает ограничения до 10 из-за подгонки продуктов на основе первого атрибута.   -  person Asif    schedule 18.02.2014
comment
от зависимого атрибута.. Я имел в виду, что значение второго атрибута в фильтрах будет зависеть от того, что выбрано для первого атрибута..   -  person Pankaj    schedule 18.02.2014
comment
поэтому у вас есть 3 отдельные таблицы для марки, модели и года соответственно. правильно   -  person Shivam    schedule 21.02.2014


Ответы (1)


Привет, приятель, ты можешь использовать приведенный ниже код в соответствии с твоим требованием.

$tableName = Mage::getSingleton('ядро/ресурс')->getTableName('bharat_sliders/categories'); $slides->getSelect() ->join( array('sc'=>$tableName), 'main_table.slider_id = sc.slider_id', array('sc.*')) ->where('sc.category_id = ?', $this->getCategoryId()); вернуть $слайды;

или также попробуйте

http://bmagento.wordpress.com/2014/04/13/join-two-table/
http://bmagento.wordpress.com/2014/04/08/join-two-table-in-magento/

person Bharat M.    schedule 29.04.2014