sProperties in Listing (Eigenschaften in Artikelübersicht)

Hallo,

das Forum ist „voll“ von Fragen dieser Art, aber leider gibt es keine zufriedenstellende Antwort oder eine Lösung für das Problem

Hardcodiert lässt sich in Shopware 5.0.x in function getListing(); in /engine/Shopware/Core/sArticles.php eine Zeile $article[‚sProperties‘] = $this->sGetArticleProperties($article[‚articleID‘]); ergänzen um das gewünschte zu bewirken.

Wie man das ganze aber in ein Plugin verpackt, ist mir schleierhaft - das zugehörige Event ist, soweit ich das beurteilen kann Shopware_Modules_Articles_sGetArticlesByCategory_Start in derselben Datei

Erstelle ich nun ein Plugin und registriere das Event folgendermaßen

        $this->subscribeEvent(
            ‚Shopware_Modules_Articles_sGetArticlesByCategory_Start‘,
            ‚onGetArticlesByCategoryStartEvent‘
        );

Und führe danach folgendes aus

    public function onGetArticlesByCategoryStartEvent(Enlight_Event_EventArgs $arguments) {
        $article = $arguments->getReturn();
        $article[‚sProperties‘] = array(‚foo1‘, ‚bar1‘);
        return $article;
    }

Erhalte ich nicht, wie zu erwarten sProperites mit einem Array mit zwei werten sondern eine Fehlermeldung

Fatal error: Call to a member function getLimit() on a non-object in …

Das Alias/namespace  Shopware\Bundle\SearchBundle habe ich allerdings importiert

Ich stehe da grade entweder irgendwo am Schlauch oder mache etwas grundlegend falsch :slight_smile:

 

Dazu sollte man in SW5 eigentlich den list product service dekorieren.

https://developers.shopware.com/developers-guide/example-plugin/

könntest du evtl. deine Lösung hier posten?

 

 

2 „Gefällt mir“