Magento 2-使用观察者事件的产品过滤器
我正在尝试创建一个观察者,以便对产品集合应用其他过滤器 所以我使用magento 2事件:目录\产品\集合\加载\之后 观察员代码为:Magento 2-使用观察者事件的产品过滤器,magento,magento2,Magento,Magento2,我正在尝试创建一个观察者,以便对产品集合应用其他过滤器 所以我使用magento 2事件:目录\产品\集合\加载\之后 观察员代码为: public function execute(\Magento\Framework\Event\Observer $observer) { $collection = $observer->getEvent()->getCollection(); $collection->addAttributeTo
public function execute(\Magento\Framework\Event\Observer $observer)
{
$collection = $observer->getEvent()->getCollection();
$collection->addAttributeToFilter('size',10);
return $this;
}
但是上面的代码可以很好地处理产品集合,但是显示了错误的分页和产品计数
层导航也是如此
有什么解决办法吗?试试这个:
namespace Vendor\Module\Observer;
use Magento\Framework\Event\ObserverInterface;
use Magento\Catalog\Model\Layer\Resolver as LayerResolver;
class CatalogProductCollectionLoadAfter implements ObserverInterface
{
/**
* @var \Magento\Catalog\Model\Layer\Category
*/
protected $catalogLayer;
/**
* @param LayerResolver $layerResolver,
*/
public function __construct(
LayerResolver $layerResolver
) {
$this->catalogLayer = $layerResolver->get();
}
public function execute(\Magento\Framework\Event\Observer $observer)
{
// Get selected filters
$layer = $this->catalogLayer;
$activeFilters = $layer->getState()->getFilters();
}
}
你找到解决问题的办法了吗?嗨,你找到解决办法了吗?你找到解决问题的办法了吗?还没有找到解决办法?在多个事件中有相同的问题。产品集合得到了很好的过滤,但是计数和分页都是错误的