Liquid, JavaScript, Themes
Hallo Liebe Leute,
ich habe folgendes funktionierendes Liqud verändert:
{% if product.selected_or_first_available_variant.available %} {% if product.gift_card? %} PDF Downloads und Geschenkkarten werden sofort per E-Mail verschickt. {% else %} {%- if product.metafields.custom.shipping_time -%} {% assign ShippingTime = product.metafields.custom.shipping_time %} {%- else -%} {% assign ShippingTime = 3 %} {%- endif -%} {% assign daysStart = ShippingTime | times: 86400 %} {% assign daysEnd = ShippingTime | plus: 3 | times: 86400 %} Vorraussichtliche Lieferung: {{ "now" | date: "%s" | plus: daysStart | date: "%d.%m.%Y" }} - {{ "now" | date: "%s" | plus: daysEnd | date: "%d.%m.%Y" }} {% endif %} {% endif %}
zu
{% if product.selected_or_first_available_variant.available %} {% if product.gift_card? %} PDF Downloads und Geschenkkarten werden sofort per E-Mail verschickt. {% else %} {%- if product.metafields.custom.versandzeit -%} {% assign ShippingTime = product.metafields.custom.versandzeit %} {%- elsif variant.metafields.custom.versandzeit -%} {% assign ShippingTime = variant.metafields.custom.versandzeit %} {%- else -%} {% assign ShippingTime = 3 %} {%- endif -%} {% assign daysStart = ShippingTime | times: 86400 %} {% assign daysEnd = ShippingTime | plus: 3 | times: 86400 %} Vorraussichtliche Lieferung: {{ "now" | date: "%s" | plus: daysStart | date: "%d.%m.%Y" }} - {{ "now" | date: "%s" | plus: daysEnd | date: "%d.%m.%Y" }} {% endif %} {% endif %}
Das Problem ist, dass die Lieferzeit richtig ausgegeben wird wenn ich das product.metalields.custom.lieferzeit fülle und wenn ich bei variant.metafields.custom.lieferzeit etwas eintrage passiert, das datum bleibt gleich.
Ich habe keine Idee warum - hat jemand eine zündende Idee ?
Viele Grüße,
Marc
Gelöst! Zur Lösung
Erfolg.
Hab es schon geschafft. ChatGPT ist schon geil 🙂 Hier die Lösung:
{% if product.selected_or_first_available_variant.available %}
{% if product.gift_card? %}
PDF Downloads und Geschenkkarten werden sofort per E-Mail verschickt.
{% else %}
{%- if product.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.metafields.custom.versandzeit %}
{%- elsif product.selected_or_first_available_variant.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.selected_or_first_available_variant.metafields.custom.versandzeit %}
{%- else -%}
{% assign ShippingTime = 3 %}
{%- endif -%}
{% assign daysStart = ShippingTime | times: 86400 %}
{% assign daysEnd = ShippingTime | plus: 3 | times: 86400 %}
Vorraussichtliche Lieferung: {{ "now" | date: "%s" | plus: daysStart | date: "%d.%m.%Y" }} - {{ "now" | date: "%s" | plus: daysEnd | date: "%d.%m.%Y" }}
{% endif %}
{% endif %}
Erfolg.
Hab es schon geschafft. ChatGPT ist schon geil 🙂 Hier die Lösung:
{% if product.selected_or_first_available_variant.available %}
{% if product.gift_card? %}
PDF Downloads und Geschenkkarten werden sofort per E-Mail verschickt.
{% else %}
{%- if product.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.metafields.custom.versandzeit %}
{%- elsif product.selected_or_first_available_variant.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.selected_or_first_available_variant.metafields.custom.versandzeit %}
{%- else -%}
{% assign ShippingTime = 3 %}
{%- endif -%}
{% assign daysStart = ShippingTime | times: 86400 %}
{% assign daysEnd = ShippingTime | plus: 3 | times: 86400 %}
Vorraussichtliche Lieferung: {{ "now" | date: "%s" | plus: daysStart | date: "%d.%m.%Y" }} - {{ "now" | date: "%s" | plus: daysEnd | date: "%d.%m.%Y" }}
{% endif %}
{% endif %}
OHNE Gewähr
Eine Version die noch Sonn und vorher definierte Feiertage berücksichtigt
{% assign holidays = "25.12,01.01,01.05" | split: "," %}
{% assign current_year = "now" | date: "%Y" %}
{% assign ShippingTime = 3 %}
{%- if product.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.metafields.custom.versandzeit %}
{%- elsif product.selected_or_first_available_variant.metafields.custom.versandzeit -%}
{% assign ShippingTime = product.selected_or_first_available_variant.metafields.custom.versandzeit %}
{%- endif -%}
{% assign daysStart = ShippingTime | times: 86400 %}
{% assign daysEnd = ShippingTime | plus: 3 | times: 86400 %}
{% assign deliveryStart = "now" | date: "%s" | plus: daysStart %}
{% assign deliveryEnd = "now" | date: "%s" | plus: daysEnd %}
{%- assign deliveryStartDay = deliveryStart | date: "%w" -%}
{%- assign deliveryEndDay = deliveryEnd | date: "%w" -%}
{% comment %}
Überprüfen, ob das Start- oder Enddatum auf einen Sonntag fällt
{% endcomment %}
{%- if deliveryStartDay == '0' -%}
{% assign deliveryStart = deliveryStart | plus: 86400 %}
{%- endif -%}
{%- if deliveryEndDay == '0' -%}
{% assign deliveryEnd = deliveryEnd | plus: 86400 %}
{%- endif -%}
{% comment %}
Feiertage berücksichtigen, dynamisch mit dem aktuellen Jahr
{% endcomment %}
{%- for holiday in holidays -%}
{%- assign holiday_with_year = holiday | append: "." | append: current_year -%}
{% assign deliveryStart_formatted = deliveryStart | date: "%d.%m.%Y" %}
{% assign deliveryEnd_formatted = deliveryEnd | date: "%d.%m.%Y" %}
{% comment %}
Prüfen, ob das Start- oder Enddatum ein Feiertag ist
{% endcomment %}
{%- if deliveryStart_formatted == holiday_with_year -%}
{% assign deliveryStart = deliveryStart | plus: 86400 %}
{%- endif -%}
{%- if deliveryEnd_formatted == holiday_with_year -%}
{% assign deliveryEnd = deliveryEnd | plus: 86400 %}
{%- endif -%}
{%- endfor -%}
Vorraussichtliche Lieferung: {{ deliveryStart | date: "%d.%m.%Y" }} - {{ deliveryEnd | date: "%d.%m.%Y" }}
Hallo zusammen! Wir haben intensiv daran gearbeitet, dein Shopify-Erlebnis auf Deutsc...
By JasonH May 12, 2025Mit dem Lernpfad der Shopify Academy und dem Verified Skills-Badge Expanding Your Sho...
By Shopify Feb 7, 2025Den Verkauf im Großhandel steigern: In der Shopify Academy lernst du, wie das geht, zum...
By Shopify Feb 3, 2025