# Filterung der Criteria in Abhängigkeit vom Result getCurrentFilter('properties')

**URL:** https://forum.shopware.com/t/filterung-der-criteria-in-abhaengigkeit-vom-result-getcurrentfilter-properties/99719
**Category:** Shopware 6 (German)
**Tags:** general, programming, templates--design, other, themes--design, offizielle-shopware-
**Created:** [16. Mai 2023 um 18:51 UTC](https://forum.shopware.com/t/filterung-der-criteria-in-abhaengigkeit-vom-result-getcurrentfilter-properties/99719 "2023-05-16T18:51:19Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![shopwarer1638](https://avatars.discourse-cdn.com/v4/letter/s/76d3ee/32.png) [@shopwarer1638](https://forum.shopware.com/u/shopwarer1638)
#### Post date: [16. Mai 2023 um 18:51 UTC](https://forum.shopware.com/t/filterung-der-criteria-in-abhaengigkeit-vom-result-getcurrentfilter-properties/99719/1 "2023-05-16T18:51:19Z")

</div>

Wie kann ich es funktionieren, so dass ich die Criteria in Abhängigkeit von dem Ergebnis getCurrentFilter(‚properties‘) filtern kann?

Damit die ausgewählten Eigenschaften in die Kriterien aufgenommen werden können. Jetzt funktioniert es wegen der Ereignisfolge nicht.

Kann ich Symfony sagen, die Seite neu zu laden, um es zu erhalten?

Kennt jemand ein anderes Event, um dies zu tun?

```auto
<?php // declare(strict_types=1);

namespace CustomFilterBasedOnSelectedOptions\Subscriber;

class Subscriber implements EventSubscriberInterface
{
    private ?array $currentPropertyOptions = null;

    public static function getSubscribedEvents(): array
    {
        return [
            ProductListingCriteriaEvent::class => 'ListingCriteria',
            ProductListingResultEvent::class => 'ListingResult'
        ];
    }

        public function ListingResult(ProductListingResultEvent $event)
    {
        $properties = $event->getResult();
        $this->currentPropertyOptions = $properties->getCurrentFilter('properties');
    }

    public function ListingCriteria(ProductListingCriteriaEvent $event): void
   {
        $event->getCriteria()->addAssociation('properties');
        $event->getCriteria()->addAssociation('properties.group');

        $currentPropertyOptions = $this->currentPropertyOptions;

        /*
        if (in_array('c0d02d1738fd4293a489695787e06b5c', $currentPropertyOptions)) {
            $criteria = $event->getCriteria();

            $criteria->addFilter(new MultiFilter(
                MultiFilter::CONNECTION_OR,
                    [
                        new ContainsFilter('product.properties.name', 'Option1'),
                        new ContainsFilter('product.properties.name', 'Option2')
                    ]
                )
            );
        }
        */
   }
}

```
