# Criteria, addCondition funktioniert nicht mit eigenen Attributen

**URL:** <https://forum.shopware.com/t/criteria-addcondition-funktioniert-nicht-mit-eigenen-attributen/66528>\
**Category:** Programmierung\
**Created:** [27. April 2020 um 12:45 UTC](https://forum.shopware.com/t/criteria-addcondition-funktioniert-nicht-mit-eigenen-attributen/66528 "2020-04-27T12:45:33Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![sp\_faka](https://avatars.discourse-cdn.com/v4/letter/s/f05b48/32.png) [@sp\_faka](https://forum.shopware.com/u/sp_faka)\
**Post date:** [27. April 2020 um 12:45 UTC](https://forum.shopware.com/t/criteria-addcondition-funktioniert-nicht-mit-eigenen-attributen/66528/1 "2020-04-27T12:45:33Z")

</div>

Hallo liebe Shopware-Gemeinde,

ich bin auf ein ziemlich nerviges Problem gestoßen. Und zwar hänge ich mich an das ‚Shopware\_SearchBundle\_Create\_Listing\_Criteria‘&nbsp;Event um eine Condition via Criteria hinzuzufügen die das Artikelattribut ‚subshop\_active‘ abfragt und nur die Ergebnisse anzeigt bei denen das&nbsp;Attribut auf 1 gesetzt ist. Der Code dafür sieht folgendermaßen aus:

```
 public function listingFilter(Arguments $args) { $criteria = $args-\>get('criteria'); $criteria-\>addCondition( new ProductAttributeCondition('subshop\_active',ProductAttributeCondition::OPERATOR\_EQ,1) ); }

```

Die Funktion funktioniert auch in der Theorie, zumindest dann wenn ich nicht das oben genannte Feld abfrage sondern eines der von Shopware vorgegeben Freitextfelder (attr1…).&nbsp; Beispiel:

```
 new ProductAttributeCondition('attr10',ProductAttributeCondition::OPERATOR\_EQ,'schwarz')

```

funktioniert und gibt das korrekt gefilterte Listing aus.

In dem Zusammenhang ist mir aufgefallen dass das für alle unsere custom Felder gilt: Keines davon kann ich mit dieser Condition richtig abfragen. Interessanterweise werden mir alle Artikel, unabhängig davon was sie in der db für einen Wert bei dem genannten ‚subshop\_active‘ Feld haben angezeigt wenn ich statt nach der 1 in der Condition nach 0 Abfrage.

Das Feld selbst wurde mit folgendem Code angelegt:

```
 $attributeCrudService-\>update( 's\_articles\_attributes', 'subshop\_active', TypeMapping::TYPE\_BOOLEAN, ['label' =\> 'Aktiv in Subshops', 'custom' =\> false, 'displayInBackend' =\> true, 'defaultValue' =\> 1, 'translatable' =\> true], null, false, 1);

```

Über Ideen woran es liegen könnte würde ich mich freuen!
