Topseller Horizontal

Ist es möglich die Topseller horizontal auszugeben bzw. ähnlich wie bei dem Recommodation Plugin? Wir würden die Topseller gerne unter bzw. +ber das Listing nehmen. Frage2: Gibt es eine Möglichkeit die Topseller als eigenes Listing auszugeben…

keine eine Idee?

Du könntest versuchen die jQuery zu überlagern und evtl. aus isVertical: true, ein false machen. Ich weiß nicht ob das der richtige Weg ist. Aber ein versuch ist es Wert. //Extends jQuery's function namespace $.fn.kwicks = function (n) { var p = { isVertical: true, sticky: false, defaultKwick: 0, event: 'mouseover', spacing: 0, duration: 500 }; var o = $.extend(p, n); var q = (o.isVertical ? 'height' : 'width'); var r = (o.isVertical ? 'top' : 'left'); return this.each(function () { $(this).parent().show(); container = $(this); var k = container.children('li'); //var l = k.eq(0).css(q).replace(/px/, ''); var l = 0; k.each(function (i) { l += Math.floor($(this).css(q).replace(/px/, '')); }); l /= k.size(); if (!o.max) { o.max = (l \* k.size()) - (o.min \* (k.size() - 1)) } else { o.min = ((l \* k.size()) - o.max) / (k.size() - 1) } if (o.isVertical) { container.css({ width: k.eq(0).css('width'), height: (l \* k.size()) + (o.spacing \* (k.size() - 1)) + 'px' }) } else { container.css({ width: (l \* k.size()) + (o.spacing \* (k.size() - 1)) + 'px', height: k.eq(0).css('height') }) } var m = []; for (i = 0; i \< k.size(); i++) { m[i] = []; for (j = 1; j \< k.size() - 1; j++) { if (i == j) { m[i][j] = o.isVertical ? j \* o.min + (j \* o.spacing) : j \* o.min + (j \* o.spacing) } else { m[i][j] = (j \<= i ? (j \* o.min) : (j - 1) \* o.min + o.max) + (j \* o.spacing) } } } k.each(function (i) { var h = $(this); if (i === 0) { h.css(r, '0px') } else if (i == k.size() - 1) { h.css(o.isVertical ? 'bottom' : 'right', '0px') } else { if (o.sticky) { h.css(r, m[o.defaultKwick][i]) } else { h.css(r, (i \* l) + (i \* o.spacing)) } } if (o.sticky) { if (o.defaultKwick == i) { h.css(q, o.max + 'px'); h.addClass('active') } else { h.css(q, o.min + 'px') } } h.css({ margin: 0, position: 'absolute' }); h.bind(o.event, function () { var c = []; var d = []; k.stop().removeClass('active'); for (j = 0; j \< k.size(); j++) { c[j] = k.eq(j).css(q).replace(/px/, ''); d[j] = k.eq(j).css(r).replace(/px/, '') } var e = {}; e[q] = o.max; var f = o.max - c[i]; var g = c[i] / f; h.addClass('active').animate(e, { step: function (a) { var b = f != 0 ? a / f - g : 1;k.each(function (j) { if (j != i) { k.eq(j).css(q, c[j] - ((c[j] - o.min) \* b) + 'px') } if (j \> 0 && j \< k.size() - 1) { k.eq(j).css(r, d[j] - ((d[j] - m[i][j]) \* b) + 'px') } }) }, duration: o.duration, easing: o.easing }) }) }); if (!o.sticky) { container.bind("mouseleave", function () { var c = []; var d = []; k.removeClass('active').stop(); for (i = 0; i \< k.size(); i++) { c[i] = k.eq(i).css(q).replace(/px/, ''); d[i] = k.eq(i).css(r).replace(/px/, '') } var e = {}; e[q] = l; var f = l - c[0]; k.eq(0).animate(e, { step: function (a) { var b = f != 0 ? (a - c[0]) / f : 1; for (i = 1; i \< k.size(); i++) { k.eq(i).css(q, c[i] - ((c[i] - l) \* b) + 'px'); if (i \< k.size() - 1) { k.eq(i).css(r, d[i] - ((d[i] - ((i \* l) + (i \* o.spacing))) \* b) + 'px') } } }, duration: o.duration, easing: o.easing }) }) } }) } })(jQuery);

Hallo, wo genau sollte ich den Code denn jetzt einfügen? In der eigentlichen topseller.tpl ist ja kein Javascript vorhanden und es erfolgt auch kein Funktionsaufruf. lg

Hallo, den genannten Code findest du unter deinen Templates. Der genaue Weg ist: templates/_default/frontend/_resources/javascript/jquery.shopware-debug.js Dort suchst du nach /\*\* \* Topseller Accordion Plugin \* for Shopware Gruß, Patrick :shopware:

[quote=„ottscho“]Du könntest versuchen die jQuery zu überlagern und evtl. aus isVertical: true, ein false machen. Ich weiß nicht ob das der richtige Weg ist. Aber ein versuch ist es Wert.[/quote] Denke nicht, dass das funktioniert, da die Topseller ja in dem Akkordion und nicht dem Slider angezeigt werden. Wir haben die Top-Seller im Rahmen dieses Projekts in einen Slider umgebaut, aber das ist im Grunde ein komplette Neu-Entwicklung, da man ja auch sicher mehr als die 5 Topseller im Slider haben will… http://www.powertemplate.de/kunden/modebina/ Da braucht man schon ziemlichen Shopware-Durchblick.

Hallo, also der Ansatz geht schon, leider funktioniert dann die Formatierung nicht mehr richtig. Das Akkordion wird horizontal dargestellt, aber der aktive Artikel ist viel zu breit. Dadurch schiebt es die Liste insgesamt aus dem umschließenden Container. @avanger: Gibt es denn eine Möglichkeit, den von euch gebauten Slider zu benutzen?