Hallo Leute! In jQuery kann man mit $.cookie('Name', 'Wert');
ein Cookie setzen. Leider funktioniert das offensichtlich in Shopware nicht, obwohl die anderen von mir benötigten Funktionen laufen. Habt Ihr einen Hinweis, warum das nicht läuft und wie ich in Shopware-Templates ein Cookie mit jQuery zu setzen habe? Vielen Dank!
Hi, ich hab das mal mit einer “Session-Funktion” gemacht, das hat funktioniert. Setzen: .session('Name', 'Wert'); Auslesen .session(‘Name’); Benötigte jQuery-Ergänzung: (function ($) { var sessionData = {}; var windowName = ""; var domain = location.href.match(/\w+:\/\/[^\/]+/)[0]; var referrer = (document.referrer) ? document.referrer.match(/\w+:\/\/[^\/]+/)[0] : ""; if (referrer == "" || referrer !== domain) { window.name = window.name.replace("#" + domain + "#", "") } function loadData() { stored = window.name.split("#" + domain + "#"); windowName = window.name = stored[0]; if (data = stored[1]) { $.each(data.split(";"), function (i, data) { parts = data.split("="); varName = parts[0]; varValue = unescape(parts[1]); sessionData[varName] = varValue }) } } function saveData() { var dataToStore = windowName + "#" + domain + "#"; $.each(sessionData, function (varName, varValue) { if (varName && varValue) { dataToStore += (varName + "=" + escape(varValue) + ";") } }); window.name = dataToStore } $.session = function (name, value) { if (value) { if ($.isFunction(value)) { value = value() } if ($.toJSON) { sessionData[name] = $.toJSON(value) } else { sessionData[name] = value } } else { if ($.evalJSON) { return $.evalJSON(sessionData[name]) } else { return sessionData[name] } } }; $.sessionStop = function () { saveData() }; $.sessionStart = function () { loadData() }; $.sessionStart(); window.onunload = function () { $.sessionStop() } })(jQuery);
Vielleicht hilft es dir ja weiter. LG Pascal