How to get custom Featured product collection in magento 2
-
05-10-2020 - |
Question
I have created one custom attribute and also i have added some product under that attribute now i need product collection of that attribute. Below is my block code for collection but it's not working
public function getCustomProduct()
{
$collection = $this->_productCollectionFactory->create()
->addAttributeToSelect('*')
->addAttributeToFilter('status', '1')
->addAttributeToFilter('featured_product', '1')
->addFieldToFilter('visibility', $this->_productVisibility->getVisibleInSiteIds());
return $collection;
}
i need all products in template file those have under featured_product attribute. Please help me. Thanks in Advanced
Solution
<?php
namespace Vendor\Module\Block;
class Featured extends \Magento\Framework\View\Element\Template
{
public function __construct(
\Magento\Catalog\Block\Product\Context $context,
\Magento\Catalog\Model\ResourceModel\Product\CollectionFactory $productCollectionFactory,
\Magento\Catalog\Model\Product\Visibility $catalogProductVisibility,
array $data = []
) {
$this->_productCollectionFactory = $productCollectionFactory;
$this->catalogProductVisibility = $catalogProductVisibility;
parent::__construct(
$context,
$data
);
}
public function getProducts()
{
$collection = $this->_productCollectionFactory->create();
$collection = $this->_productCollectionFactory->create()->addAttributeToSelect('*')->addAttributeToFilter('status', '1')
->addAttributeToFilter('featured_product', '1');
$collection->setVisibility($this->catalogProductVisibility->getVisibleInCatalogIds());
return $collection;
}
}
You can use above code to get featured product.
Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange