Problem: Ein Shopify-Händler nutzt Liquid-Code, um variantenspezifische Lieferzeiten anzuzeigen. Der Code funktioniert beim Seitenladen, wird aber nicht automatisch aktualisiert, wenn Kunden eine andere Produktvariante auswählen – die alte Lieferzeit bleibt sichtbar bis zur manuellen Seitenaktualisierung.
Technischer Hintergrund:
Der Code greift auf Metafelder (product.selected_or_first_available_variant.metafields.custom.versandzeit) zu
Verwendet wird das Craft Theme
Ähnlich wie SKU-Aktualisierungen muss der Code bei Variantenwechsel neu ausgeführt werden
Lösungsansatz:
Ein JavaScript-Event-Listener muss hinzugefügt werden, der bei Variantenwechsel den betroffenen Bereich aktualisiert
Referenz-Tutorial für Dawn Theme wurde geteilt (SKU-Aktualisierung als Transferaufgabe)
Die erforderlichen Code-Anpassungen befinden sich in der product-info.js, nicht in der global.js wie ursprünglich vermutet
Status: Gelöst – der Nutzer konnte die Lösung erfolgreich umsetzen, nachdem die richtige Datei identifiziert wurde.
Summarized with AI on November 5.
AI used: claude-sonnet-4-5-20250929.
ich nutze das folgende Liquid um meinem Artikel pro Variante unterschiedliche Lieferzeiten geben zu können. An sich funktioniert das auch hervorragend, bis auf eine Kleinigkeit. Wenn ich die Variante wechsel wird der Code nicht erneut ausgeführt und die alte Lieferzeit bleibt bestehen. Wenn ich die Seite aktualisiere wird der Code erneut ausgeführt und das richtige Datum erscheint. Wie kann ich erreichen das der Code erneut ausgeführt wird wenn die Variante gewechselt wird ?
@meicker , das kommt darauf an, welches Theme du verwendest, aber im Grunde musst du noch ein Skript einfügen, das diesen Bereich bei einem Variantenwechsel aktualisiert (so wie beim Preis).
Der Code sieht zwar toll aus, aber dabei konnte mir ChatGPT ganz gut unter die Arme greifen Leider habe ich keine Ahnung wie der Code aussehen soll und wo er hin muss. Ich hatte schon bei den .liquids geschaut aber ohne zu wissen was ich machen soll hab ich da wohl keine Chance.
Könntest Du mir helfen oder ein paar Hinweise geben ?
da steige ich nicht durch zumal bei mir die SKU ja beim wechsel der Variante bereits aktualisiert wird. Nicht das ich da was doppelt einbaue und mir Fehler produziere.
Es müsste doch irgendwie möglich sein die bestehenden Befehle die z.B die SKU updaten auf das benutzerdefinierte liquid auszuweiten.
@meicker das ist ja mein Punkt. In der Schule hätte man das als Transferaufgabe bezeichnet.
Du willst ja nicht die SKU aktualisieren, aber Du willst einen Varianten-Wert (identisch zu einer SKU) laden.
Im Theme JS sollte irgendwo eine Stelle zu finden sein, welche die SKU aktualisiert. Diese muss man dann für das Element erweitern, auf die sich das beziehen soll. Leider kenne ich den Code & die Stelle beim Craft Theme nicht.
@Finer Schade - hab es tatsächlich geschnallt und könnte es wahrscheinlich auch nutzen. Aber leider hat sich scheinbar die global.js so stark geändert, dass ich keine Passage für die Änderung mehr finde oder zuordnen könnte … Da scheint alles anders zu sein.
Das wirft natürlich auch noch eine weitere Frage auf. Wie update sicher ist denn so eine Anpassung überhaupt ? Wenn ich ein Theme update, werden dann meine Änderungen überschrieben ? Müsste ja eigentlich so sein … oder ?
Das ist die richtige Lösung. Ich habe es damit umsetzen können. Allerdings sind die erforderlichen Codestellen nicht wie beschrieben in der global.js sondern in der product-info.js zu finden.