Wenn man in Magento 2 nur einen einzelnen Attributwert eines Produkts benötigt, muss man dafür nicht immer das komplette Produkt über das Repository oder eine Collection laden. Gerade in Schleifen, Cronjobs oder Importen kann das unnötig viel Arbeit verursachen.

Über das Product Resource Model lässt sich ein Attribut direkt anhand von Produkt ID, Attributcode und Store ID auslesen:

Magento lädt dabei nicht das komplette Produktmodell mit sämtlichen Attributen, sondern liest gezielt den benötigten Wert. Das kann besonders interessant sein, wenn innerhalb einer größeren Verarbeitung für viele Produkte nur ein einzelnes Attribut benötigt wird.

Bei einem Dropdown Attribut wie manufacturer gibt getAttributeRawValue() allerdings die gespeicherte Option ID zurück und nicht deren sichtbare Bezeichnung. Soll zusätzlich der eigentliche Wert des Dropdowns ermittelt werden, kann die Option über die Attribut Source aufgelöst werden:

Aus einer gespeicherten Option ID wie 42 wird damit beispielsweise die sichtbare Bezeichnung Bosch. Durch die Store ID wird dabei auch berücksichtigt, dass ein Attributwert oder die Bezeichnung einer Option je nach Store View unterschiedlich sein kann.

Produktattribut auslesen, ohne das komplette Produkt zu laden
Sie benötigen Unterstützung bei der Umsetzung dieser Lösung oder Sie haben die passende Lösung für Ihr Magento Problem noch nicht gefunden? Kontaktieren Sie mich und ich helfe Ihnen bei Ihrem Magento Projekt!
Schlagwörter: