Liquid, JavaScript, Themes
Moin ihr Lieben!
da ich bei diesem Thema einfach nicht weiterkomme :
würde ich gerne in Erfahrung bringen, ob es möglich ist, bei bestimmten Seiten/Produkten einen vorher definierten <div> via Code direkt anzusprechen und auszublenden.
Und zwar geht es darum, daß ich in meiner product.liquid wegen der DSDVO den Satz <p>Lieferzeit 2-3 Tage</p> hinzugefügt habe.
Diesen möchte ich nun aber bei einem bestimmten Produkt ausblenden.
Mein erster Gedanke war das Erstellen eines neuen Produkt Templates als exakte Kopie des Standard Templates mit genau dieser Änderung. Und dann das Produkt
mit dem neuen Template im Editor zu verbinden. Das bekomme ich aber nicht hin (siehe Link oben).
Nun die Frage ob ich das Erstellen eines Templates umgehen kann?
So als Laie ohne Ahnung:
Könnte ich meinen <p>Lieferzeit 2-3 Tage</p> Hinweis in z.B einen <div> stecken und diesem eine feste id geben.
Und durch Code XY dann in dem ausgewählten Produkt diesen <div> ausblenden?
Was wäre die richtige Heransgehensweise? Wie müsste das aussehen?
Könnte man dies auch über einen Tag machen?
Frei nach dem Motto:
If produkt.tag == "Urlaub"
show.div.xy = False
Endif 😉
Ja ich weiss, das macht keinen Sinn
Liebe Grüße,
Phil
Ich bin leider kein Programmierer und wüsste mein Anliegen auch nicht besser zu umschreiben.
Gelöst! Zur Lösung
Erfolg.
Sieht gut aus. Du solltest eine Kopie deines Themes anlegen, dann kannst du den Code auch ausprobieren. ohne deine Shop zu stören.
Wenn deine Änderung nicht funktioniert, dann hast du in der Kopie auch nichts kaputt gemacht.
Gruß
Thomas
Hallo @PB79,
da gibt es verschiedene Möglichkeiten: Zum einem kannst du den verschiedenen Produkten verschiedene Templates zuordnen. Das ist der Weg, den du schon versucht hast, bei dem du aber steckengeblieben bist. Wobei für mich nicht erkennbar ist, wo du versumpft bist. Vermutlich beim Zusammenhang zwischen Template und Section.
Zum anderen kannst Du in LIQUID abfragen, welches Produkt gerade gerendert wird und in Abhängigkeit davon, Texte ein- oder ausblenden.
Welches Theme verwendet du?
Gruß
Thomas
Moin @tewe
vielen Dank das du dir Zeit genommen hast mir zu antworten.
Ich verwende das Porto Theme.
Ich habe mich die Nacht durch die shopify docs gewühlt und am ende ist folgendes dabei rumgekommen:
Bei dem Code der die verfügbare Artikelmenge ausgibt habe ich eine IF abfrage hinzugefügt.
Ich wollte erst einen Tag abfragen aber das hat irgendwie nicht funktioniert. Daher habe ich Titel genommen.
Dies scheint zu klappen. Magst du einmal 'drüberschauen ob der Code generell so ok ist?
<br>
{% assign product_qty = 0 %}
{% for variant in product.variants %}
{% if variant.inventory_quantity > 0 %}
{% assign product_qty = product_qty | plus: variant.inventory_quantity %}
{% endif %}
{% endfor %}
{% if product_qty > 0 %}
<p style="font-size : 14px; font-family:Open Sans;">Der Artikel ist <span style="color:green"> {{ product_qty }} x verfügbar</span></p>
{% endif %}
{% if product.type != "Testprodukt" %}
<p style="font-size : 14px; font-family:Open Sans;">Lieferzeit: 2 - 4 Werktage</p>
{% endif %}
{%- endif -%}
Ich habe die gesamte liquid als .txt einmal hochgeladen: hier
Ich weiss gerade nicht ob das letzte Endif da korrekt ist btw ob es zu dem Code darüber gehört.
Wäre toll wenn du das eventuell prüfen könntest 🙂
Gruss
Phil
Erfolg.
Sieht gut aus. Du solltest eine Kopie deines Themes anlegen, dann kannst du den Code auch ausprobieren. ohne deine Shop zu stören.
Wenn deine Änderung nicht funktioniert, dann hast du in der Kopie auch nichts kaputt gemacht.
Gruß
Thomas
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