Hallo,
bitte sende mir dein js zu mit der olugin überschreibung.
Habe ein ähnliches Problem mit der EAN die auch pro Variante vergeben wird.
Beim AJAX-Reload wird das ebenfalls nicht aktualisiert.
EDIT-------------
Das Javascript habe ich richtig erstellt.
war verwirrt das du den Code nicht ausgeschrieben hast.
Deine tabs.tpl würde mich interessieeren.
Aktuell sieht meine Abfrage so aus
{if $sArticle.ean || $sArticle.suppliernumber}
{if $sArticle.ean}{s name="DetailEANLable"}EAN: {/s}{$sArticle.ean}{/if}
{if $sArticle.suppliernumber}{s name="DetailSuppliernumberLable"}Herstellernummer: {/s}{$sArticle.suppliernumber}{/if}
{/if}
Das steht auch in der tabstpl bei mir
mein js sieht so aus
$.overridePlugin('swLastSeenProducts', {
defaults: {
productDetailsSelector: '.product--detail-upper',
configuratorFormSelector: '.configurator--form',
orderNumberSelector: '.entry--sku .entry--content',
historyIdentifier: 'sw-ajax-variants',
productDetailsDescriptionSelector: '.content--description',
productDetailsDescriptionSelector2: '.content--description2'
},
requestData: function(values, pushState) {
"use strict";
var me = this,
stateObj = me._createHistoryStateObject();
$.loadingIndicator.open({
closeOnClick: false,
delay: 100
});
$.publish('plugin/swAjaxVariant/onBeforeRequestData', [me, values, stateObj.location]);
values.template = 'ajax';
if (stateObj.params.hasOwnProperty('c')) {
values.c = stateObj.params.c;
}
$.ajax({
url: stateObj.location,
data: values,
method: 'GET',
success: function(response) {
var $response = $($.parseHTML(response)),
$productDetails,
$productDescription,
$productDescription2,
ordernumber;
// Replace the content
$productDetails = $response.find(me.opts.productDetailsSelector);
$(me.opts.productDetailsSelector).html($productDetails.html());
// Replace the description box
$productDescription = $response.find(me.opts.productDetailsDescriptionSelector);
$(me.opts.productDetailsDescriptionSelector).html($productDescription.html());
// Replace the description box
$productDescription2 = $response.find(me.opts.productDetailsDescriptionSelector2);
$(me.opts.productDetailsDescriptionSelector2).html($productDescription2.html());
// Get the ordernumber for the url
ordernumber = $.trim(me.$el.find(me.opts.orderNumberSelector).text());
// Update global variables
window.controller = window.snippets = window.themeConfig = window.lastSeenProductsConfig = window.csrfConfig = null;
$(me.opts.footerJavascriptInlineSelector).replaceWith($response.filter(me.opts.footerJavascriptInlineSelector));
StateManager.addPlugin('select:not([data-no-fancy-select="true"])', 'swSelectboxReplacement')
.addPlugin('*[data-image-slider="true"]', 'swImageSlider', { touchControls: true })
.addPlugin('.product--image-zoom', 'swImageZoom', 'xl')
.addPlugin('*[data-image-gallery="true"]', 'swImageGallery')
.addPlugin('*[data-add-article="true"]', 'swAddArticle')
.addPlugin('*[data-modalbox="true"]', 'swModalbox');
// Plugin developers should subscribe to this event to update their plugins accordingly
$.publish('plugin/swAjaxVariant/onRequestData', [me, response, values, stateObj.location]);
if (pushState && me.hasHistorySupport) {
var location = stateObj.location + '?number=' + ordernumber;
if (stateObj.params.hasOwnProperty('c')) {
location += '&c=' + stateObj.params.c;
}
window.history.pushState(stateObj.state, stateObj.title, location);
}
},
complete: function() {
$.loadingIndicator.close();
}
});
},
});
Irgendwas läuft aber noch falsch weswegen mich deine lösung interesssiert
Gruß Richard