Magento(2.2.4)不会将带有自定义源的自定义属性添加到平面表中。该属性在产品列表页面(类别)上不可用。在产品详细信息页面上将其显示。
$catalogEavSetup->addAttribute(Mage_Catalog_Model_Product::ENTITY,
'energy_label', array(
'label' => 'Energielabel',
'type' => 'int',
'input' => 'select',
'used_in_product_listing' => true,
'visible_on_front' => true,
'source' => 'Company\CustomCatalog\Source\EnergyLabel',
'apply_to' => null,
'filterable' => false,
'attribute_model' => null,
'backend' => null,
'table' => null,
'frontend' => null,
'frontend_class' => null,
'required' => 0,
'user_defined' => 1,
'default' => '',
'unique' => 0,
'note' => null,
'global' => \Magento\Eav\Model\Entity\Attribute\ScopedAttributeInterface::SCOPE_GLOBAL,
));
“ visible_on_front”和“ used_in_product_listing”都设置为true。 重新索引没有帮助。
有什么建议吗?
答案 0 :(得分:1)
您的自定义源模型还必须实现以下功能:
getFlatColumns(),getFlatIndexes(),getFlatUpdateSelect($ store)
如果实现它们,则应在之后将属性添加到平面表中
php bin/magento indexer:reindex