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" }}
Teil 2 - Wie die Prinzipien des UX-Designs dir dabei helfen können einen großartigen Shop ...
By Kai Sep 16, 2024Teil 1 - Wie die Prinzipien des UX-Designs dir dabei helfen können einen großartigen Shop ...
By Kai Sep 9, 2024Anpassungen des benutzerdefinierten Codes an Shopify-Themes (CSS) leicht gemachtIn diesem...
By Gabe Aug 28, 2024