"Zuletzt angesehen" in Shopware anpassen

Screenshot eines Shopware Demo Shops - Bereich Produkte Zuletzt angesehen

Aktuell hatte ich viel Freude mit dem "Last seen" Element in Shopware.

Da das Verhalten des Cache in Shopware für mich ein großes Mysterium ist und bleibt, habe ich etwas länger gebraucht, die passende Stelle im Template zu finden.

Geändert werden sollte die Ausgabe des Artikelnames, bzw. der ergänzende Text zum Artikelname sollte nicht mehr erscheinen ($sArticle.articleName und $sArticle.additionaltext). Hier sollte stattdessen eine Kategorie den Namen des Artikel ergänzen.

Die Variablen dafür werden jedoch abweichend durch jQuery übergeben, also meinte ich sie auch dort anpassen zu müssen.

Nein.

Weit gefehlt. Caches und Cookies führten mich an der Nase herum (und seltsame Foreneinträge) und es ist tatsächlich nur eine Änderung, bzw. Überschreibung im Template und zwar in der index/index.tpl dazu notwenig. Im folgenden Bare-Code-Block muss die if-Abfrage überschrieben werden.

{if $sArticle}
    {$lastSeenProductsConfig.currentArticle = $sLastArticlesConfig}
    {$lastSeenProductsConfig.currentArticle.articleId = $sArticle.articleID}
    {$lastSeenProductsConfig.currentArticle.linkDetailsRewritten = $sArticle.linkDetailsRewrited}
    {$lastSeenProductsConfig.currentArticle.articleName = $sArticle.articleName}
    {if $sArticle.additionaltext}
        {$lastSeenProductsConfig.currentArticle.articleName = $lastSeenProductsConfig.currentArticle.articleName|cat:' ':$sArticle.additionaltext}
    {/if}
    {$lastSeenProductsConfig.currentArticle.imageTitle = $sArticle.image.description}
    {$lastSeenProductsConfig.currentArticle.images = []}

    {foreach $sArticle.image.thumbnails as $key => $image}
        {$lastSeenProductsConfig.currentArticle.images[$key] = [
            'source' => $image.source,
            'retinaSource' => $image.retinaSource,
            'sourceSet' => $image.sourceSet
        ]}
    {/foreach}
{/if}

Und zwar so. (Da die Anpassung nicht in allen Shops innerhalb der Installation geschehen sollte, wird zusätzlich noch ein Untershop ausgeschlossen.)

{if $sCategoryInfo.name and $shopKind != 3}
    {$lastSeenProductsConfig.currentArticle.articleName = $lastSeenProductsConfig.currentArticle.articleName|cat:' - ':$sCategoryInfo.name}
{/if}

Wenig magisch.