Magento 2: Как получить коллекцию атрибутов продукта в файле пользовательского блока, статус которого отображается = & gt; да?

Вот моя функция для вызова коллекции атрибутов продукта. У меня уже есть атрибуты продукта для продуктов, которые включены, но у меня возникла проблема с фильтрацией их в соответствии с их собственной видимостью, т.е. я хочу, чтобы только та коллекция атрибутов продукта, статус которой установлен, видна от администратора. …

class ProductList extends \Magento\Framework\View\Element\Template
{
protected $_attributeFactory;

public function __construct(
\Magento\Catalog\Model\ResourceModel\Eav\Attribute $attributeFactory

){
parent::__construct($context);
$this->_attributeFactory = $attributeFactory;
}

public function getallattributes()
{
$arr = [];
$attributeInfo = $this->_attributeFactory->getCollection()->addFieldToFilter(\Magento\Eav\Model\Entity\Attribute\Set::KEY_ENTITY_TYPE_ID, 4);

foreach($attributeInfo as $attributes)
{
$attributeId = $attributes->getAttributeId();
// You can get all fields of attribute here

$arr[$attributes->getAttributeId()] = $attributes->getFrontendLabel();}
return $arr;
}                                                                    }

2

Решение

Не проверял, но он сделает работу за вас

$attributeInfo = $this->_attributeFactory->getCollection()
->addFieldToFilter(\Magento\Eav\Model\Entity\Attribute\Set::KEY_ENTITY_TYPE_ID, 4)
->addFieldToFilter('is_visible_on_front',1);
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]