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に設定されています。インデックスの再作成は役に立ちませんでした。
助言がありますか?
カスタムソースモデルは、次の関数も実装する必要があります。
getFlatColumns()、getFlatIndexes()、getFlatUpdateSelect($ store)
それらを実装する場合は、属性を後でフラットテーブルに追加する必要があります
php bin/magento indexer:reindex
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加