Länderauswahl einschränken 
Autor: Armin L.
Visitado 376,
Followers 1,
Compartido 0
Beim WebSop im Register "Ihre Daten" wird bei der Länderauswhal "Germany" angezeigt. Ist es möglich, dass dort standardmässig "Schweiz"angezeigt wird? Dies würde für mich Sinn machen, da wir nur innerhalb der Schweiz Ware verschicken. Danke für eure Tips.
Publicado en

(It > De) ... ohne den Link kann ich das nicht beurteilen...
... jedenfalls ist das hier meine Erfindung von vor ein paar Jahren, die funktionieren könnte; das Kürzel "CH" steht für die Schweiz:
<script>
$(document).ready(function () {
/** -- nazione per default x cart WSx5 by KolAsim -- **/
const siglaK = "CH";
/**--fK--**/
handleCountrySelection(); $(window).on("hashchange", function () { handleCountrySelection(); }); function handleCountrySelection() { const anchor = location.hash; if (anchor === "#step1" || anchor === "#step1/guest_order") { $('#Country option[value='+siglaK+']').prop('selected', true); } } });
</script>
.
ciao
.
Autor
Leider weiss ich nicht, wo und wie dieser script eingefügt werden muss. Gibt es da vielleicht einen Screenshot?
Der Link zu meinem Shop finden sie hier.
Danke Für ihre Bemühungen. Freundliche Grüsse
A. Lang
... Hallo, mein Code könnte geeignet sein, um die Schweiz als Standardland anstelle der Browsersprache festzulegen...
...füge den Code einfach in Schritt 3 in die Eigenschaften der Warenkorbseite ein, die du unten nach den Seitenmenüpunkten findest. Der Code muss im Grunde genau hier eingefügt werden:
>> Schritt 3 - Sitemap > 'Eigenschaften der Seite' Fenster > Funktionen im Bereich Erweitert >
▪BenutzerdefinierterCode: Vor dem </HEAD> Tag
.
ciao
.
... es kann nicht ausgewertet werden. Im Quellcode Ihrer CART-Seite findet sich keine Spur meines Nation-Kontrollcodes; ...!...Sie haben ihn nicht angewendet...!...
...wenn doch, lassen Sie es mich wissen, wenn Sie das Problem behoben haben...
.
ciao
.
Autor
Hallo KolAsim, ich habe den Code an der empfohlenen Stelle eingepflegt. Leider ändert sich in der Vorschau so wie in der Onlineversion nichts. Danke für ihre Bemühungen. Freundlichst A.Lang
ciao, ...Sie haben meinen Code nun korrekt angewendet, und ich konnte ihn auswerten...
...Ich denke, das Problem hängt mit der Latenz der Seite im Vergleich zur PHP-Verarbeitung der Site zusammen...
...Ich habe meiner Erfindung eine Modifikation hinzugefügt, die den Seitenfluss steuert...
...Entfernen Sie den alten Code und wenden Sie stattdessen meinen neuen, aktualisierten Code an:
<script>
$(document).ready(function () {
/** -- nazione per default x cart WSx5 by KolAsim -- **/
const siglaK = "CH";
/**--fK--**/
const maxAttempts = 10; let attempt = 0; function waitForCartContentAndRun() { const cartContent = $('#cart-content'); if (cartContent.length && cartContent.is(':visible')) { handleCountrySelection(); } else if (attempt < maxAttempts) { attempt++; setTimeout(waitForCartContentAndRun, 1000); } else { } } function handleCountrySelection() { const anchor = location.hash; if (anchor === "#step1" || anchor === "#step1/guest_order") { $('#Country option[value=' + siglaK + ']').prop('selected', true); } } waitForCartContentAndRun(); $(window).on("hashchange", function () { attempt = 0; waitForCartContentAndRun(); }); });
</script>
.
ciao
.
Autor
Autor
..funktioniert auch nicht..
... danke für deinen Online-Test...
... der Code funktioniert bei mir in der realen Simulation einwandfrei, aber dank deines Beispiels denke ich, dass das Problem möglicherweise immer noch mit der Seitenlatenz zusammenhängt, die ich mir bereits vorgestellt hatte...
... jetzt habe ich eine neue Änderung hinzugefügt, mit einer zusätzlichen, um 1 Sekunde verzögerten Prüfung in der Variable "ritardoK = 1;"...
... also ersetze den vorherigen Code durch diesen neuen Code, exportiere ihn, teste ihn und gib mir Bescheid... ciao...
<script>
$(document).ready(function () {
/** -- cambio nazione per default x cart WSx5 by KolAsim -- **/
const siglaK = "CH";
ritardoK = 1;
/**--fK--**/
const maxAttempts = 10; let attempt = 0; function waitForCartContentAndRun() { const cartContent = $('#cart-content'); if (cartContent.length && cartContent.is(':visible')) { setTimeout(handleCountrySelection, ritardoK*1000); } else if (attempt < maxAttempts) { attempt++; setTimeout(waitForCartContentAndRun, 1000); } else { console.warn('Contenitore #cart-content non trovato dopo 10 secondi.'); } } function handleCountrySelection() { const anchor = location.hash; if (anchor === "#step1" || anchor === "#step1/guest_order") { const $countrySelect = $('#Country'); if ($countrySelect.length) { $countrySelect.find('option[value="' + siglaK + '"]').prop('selected', true).trigger('change'); console.log('Paese impostato su ' + siglaK); } else { console.warn('Select #Country non trovata'); } } } waitForCartContentAndRun(); $(window).on("hashchange", function () { attempt = 0; waitForCartContentAndRun(); }); });
</script>
.
Bei meinem Demo Shop funktioniert es jetzt - siehe Screenshot - vorher war das nicht der Fall.
-----
Autor
Halleluja, es funktioniert. Ganz herzlichen Dank für eure Hilfe
Gruss A. Lang
... OK... ich habe nachgesehen, und Ihre Online-Warenkorbseite hat für die Schweiz funktioniert...
.
Hallo, ciao
.