Questions tagged «multiselect-attribute»

2
如何在Magento 2分层导航中实现多类别过滤器
我正在为分层导航实现多个类别过滤器。我正在按我的要求获取结果,但是集合大小出错了,仍然与父类别集合大小相同。 还有其他方法可以实现此功能。 我修改了以下代码: public function apply(\Magento\Framework\App\RequestInterface $request) { $categoryId = $request->getParam($this->_requestVar) ?: $request->getParam('id'); if (empty($categoryId)) { return $this; } $this->dataProvider->setCategoryId($categoryId); $category = $this->dataProvider->getCategory(); **$this->getLayer()->getProductCollection()->addCategoryFilter($category);** if ($request->getParam('id') != $category->getId() && $this->dataProvider->isValid()) { $this->getLayer()->getState()->addFilter($this->_createItem($category->getName(), $categoryId)); } return $this; } 更换addCategoryFilter($category)用addCategoriesFilter('eq' => $categoriesArray); 但是,由于分层导航计数来自其他地方而不是产品集合。 想知道从哪里来。以及如何在其中应用多个类别过滤器?


4
获取选定的multiselect属性的值
采取以下“汽车”产品:大众高尔夫。 它具有multiselect属性,car_options其中包含以下可能的选项及其ID: 的Airco(ID = 123)中选择 无线电(ID = 124)中选择 蓝牙(id = 125) 导航(id = 126) 为此产品选择了Radio和Airco。如何获得这两个值(radio,airco)并显示它们?$ _product被给出。

2
如何使用安装脚本为客户创建多选属性?
我正在关注许多文章,但无法创建多选择属性。而且我得到以下错误。 a:5:{i:0; s:50:“属性” exinent1“找不到源模型”“”; i:1; s:3008:“#0 C:\ wamp \ www \ magento8 \ app \ code \核心。 我的脚本是: <?php $installer = $this; $installer->startSetup(); $setup = new Mage_Eav_Model_Entity_Setup('core_setup'); $entityTypeId = $setup->getEntityTypeId('customer'); $attributeSetId = $setup->getDefaultAttributeSetId($entityTypeId); $attributeGroupId = $setup->getDefaultAttributeGroupId($entityTypeId, $attributeSetId); $setup->addAttribute('customer', 'exinent1', array( 'input' => 'multiselect', 'type' => 'varchar', 'backend' => 'eav/entity_attribute_backend_array', 'label' …

1
在多选属性上具有FIND_IN_SET的集合,但有些只有一个值
我正在建立一个产品集合,它将从multiselect属性中找到结果。 (将finset添加到集合中的相关代码-调整为显示真实ID值) $attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'measurement'); $value = array('finset' => array('237', '236', '235', '234', '233',)); $collection->addAttributeToFilter($attribute, $value); 产生的sql(添加了可见性过滤器)是这样的: SELECT DISTINCT e . *, at_measurement.value AS measurement, at_visibility.value AS visibility FROM catalog_product_entity AS e INNER JOIN catalog_product_entity_varchar AS at_measurement ON (at_measurement.entity_id = e.entity_id) AND (at_measurement.attribute_id = '983') AND (at_measurement.store_id = 0) …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.