Grundpreis im "Zuletzt angesehen"

Hallo zusammen. Ich habe wieder eine Frage. wie kann ich in den Bereich “Zuletzt angesehen” die Produkte mit Preis + Grundpreis anzeigen? Danke Sergius

Hallo, ich habe das gefunden für Shopware5. Du kannst neue Attribute für lastSeenProducts erstelen in: themes/Frontend/DeineTheme/frontend/index/index.tpl und die HTML code zu zeigen in: themes/Frontend/DeineTheme/frontend/_public/src/js/jquery.last-seen-products.js Vorsicht: Nur die neue besuchte Artikel nach die Änderung haben das neu Attribute. Beispiel fur Attr1 : themes/Frontend/DeineTheme/frontend/index/index.tpl Die neue Linie: 'attr1': '{$sArticle.attr1}', zusammen var lastSeenProductsConfig = lastSeenProductsConfig || {ldelim} 'baseUrl': '{$Shop-\>getBaseUrl()}', 'shopId': '{$Shop-\>getId()}', 'noPicture': '{link file="frontend/\_public/src/img/no-picture.jpg"}', 'productLimit': ~~('{config name="lastarticlestoshow"}'), 'currentArticle': {ldelim}{if $sArticle} {foreach $sLastArticlesConfig as $key =\> $value} '{$key}': '{$value}', {/foreach} 'articleId':~~('{$sArticle.articleID}'), 'linkDetailsRewritten': '{$sArticle.linkDetailsRewrited}', 'articleName': '{$sArticle.articleName|escape:"javascript"}', 'attr1': '{$sArticle.attr1}', 'images': {ldelim} {foreach $sArticle.image.thumbnails as $key =\> $image} '{$key}': {ldelim} 'source': '{$image.source}', 'retinaSource': '{$image.retinaSource}', 'sourceSet': '{$image.sourceSet}' {rdelim}, {/foreach} {rdelim} {/if}{rdelim} {rdelim}; themes/Frontend/DeineTheme/frontend/_public/src/js/jquery.last-seen-products.js Das Neu [code] if(article.attr1==“24”){ return $(’

', { ‘class’: me.opts.itemCls, ‘html’: [ me.createProductImage(article), me.createProductTitle(article), ’

’ ] }); } else { … }[/code] zusammen [code] /** * Creates a product slider item template. * * @public * @method createTemplate * @param {Object} article */ createTemplate: function (article) { var me = this; if(article.attr1==“24”){ return $(’
', { ‘class’: me.opts.itemCls, ‘html’: [ me.createProductImage(article), me.createProductTitle(article), ’

’ ] }); } else { return $(’
', { ‘class’: me.opts.itemCls, ‘html’: [me.createProductImage(article), me.createProductTitle(article)] }); } }, … [/code]

1 „Gefällt mir“

1000 Dank für die Anleitung. Ich habe das Vorgehen noch etwas verfeinert, in dem ich nicht die “themes/Frontend/DeineTheme/frontend/_public/src/js/jquery.last-seen-products.js” klone, sondern durch eine “themes/Frontend/DeineTheme/frontend/_public/src/js/jquery.override.last-seen-products.js” erweitere:

;(function ($) {
    $.overridePlugin('swLastSeenProducts', {

        createTemplate: function (article) {
            var me = this,
                $template = $('', {
                    'class': me.opts.itemCls,
                    'html': [
                        me.createProductImage(article),
                        me.createProductTitle(article),
                        me.createPriceTemplate(article)
                    ]
                });
            $.publish('plugin/swLastSeenProducts/onCreateTemplate', [me, $template, article]);

            return $template;
        },

        createPriceTemplate: function (article) {
            var html;
            // your custom stuff here
            return $(html);
        }
    });
}(jQuery));


Das ist natürlich immer noch nicht komplett perfekt, aber erspart schonmal das Kopieren größerer Code-Brocken.

Oh, und die neue JS-Datei muss natürlich in der "Theme.php" registriert werden.