cabulcabul MemberComments: 4 Received thanks: 0 Member since: May 2018

Guten Morgen,

gibt es eine Möglichkeit, die Suche so zu erweitern, dass auch nach Herstellername und nach bestimmten CustomFields-Einträgen gesucht wird?

Danke.

Answers

  • rockinmcrockinmc MemberComments: 49 Received thanks: 4 Member since: January 2018

    Gurten Morgen,

    vielleicht ist das ein guter Startpunkt: https://github.com/mnaczenski/MNExtendSearch

  • cabulcabul MemberComments: 4 Received thanks: 0 Member since: May 2018

    Ich würde das gerne so haben, dass ich einen Subscriber dafür einsetzen kann. Habe auch schon folgendes und das funktioniert bereits. Das würde ich gerne wie oben beschrieben erweitern 

     

        public static function getSubscribedEvents(): array
        {
            return [
                ProductSearchCriteriaEvent::class => 'onSearch'
            ];
        }
    
        public function onSearch(ProductListingCriteriaEvent $event)
        {
            $searchTerm = $event->getRequest()->query->get('search');
            $categoryId = $event->getRequest()->query->get('categorie');
            $brandId = $event->getRequest()->query->get('brand');
    
            $event->getCriteria()->addAssociation('seoUrls');
            $event->getCriteria()->addAssociation('customFields');
            $event->getCriteria()->addAssociation('categories');
    
            if ($categoryId) {
                $event->getCriteria()->addFilter(new EqualsAnyFilter('product.categories.id', [$categoryId]));
            }
            
            if ($brandId) {
                $event->getCriteria()->addFilter(new EqualsAnyFilter('product.manufacturerId', [$brandId]));
                $event->getRequest()->addCurrentFilter('manufacturer', $brandId);
            }
        }

     

Sign In or Register to comment.