Hallo Zusammen,
Suche für die bedingte Ausgabe von hreflang die Bedingung „ist nicht Child-Artikel?“
Abfragen wie
{% if page.product.parent %}
{# Kindartikel #}
{# Ihre Logik hier ... #}
{% elseif page.product %}
{# Übergeordneter Artikel #}
{# Ihre Logik hier ... #}
{% endif %}
funktionieren leider nicht.
Entweder ist die Abfrage der Variable falsch, oder ist immer leer.
Hab auch mit diesen Variablen versucht ein Ergebnis zu bekommen:
if page.product.children is empty
if page.product.type == ‚product‘
Ich bekomme jedoch Werte zurück für:
{{ page.product.parentId }}
{{page.product.id}}
Leider kann ich daraus keine Logik entwickeln.
Lediglich auswerten, ob „Vater/ Kind-“ oder „Single-Artikel“
Hat jemand eine schlaue Idee, wie ich das ermitteln kann?
Wenn nicht Kind-Artikel dann Aktion, sonst nix.
Abfrage in meta.html.twig.
Hi Hartmut,
so dachte ich auch schon. Leider wirft er die parentId auch beim Hauptartikel aus.
Mit dieser Logik-Abfrage funktioniert das leider nicht.
Nach letztem Erkenntnis hab ich gar keine Chance, weil shopware 6 hier quasi „schummelt“.
Es gibt keine eigentlich URL für den Vater, wenn auch da eine SEO-URL vergeben wird, so wird der Inhalt eines Kindes angezeigt.
Es muss eine andere Logik her.
Aber da kenne ich die Variable nicht.
Abfrage:
if „angezeigte URL im Browser“ == „canonical url“ → hauptartikel
else Kind oder so.
Da habe ich Dich vermutlich falsch verstanden. Weil, zumindest wie ich das verstehe, gibt es ja bei Variantenartikeln in SW6 keine Hauptartikel im Frontend mehr, die irgendwie detektiert werden könnten, da diese ja nur als Container im Hintergrund dienen. Ich bin davon ausgegangen, die Logik soll einfach nur erkennen, ob irgendein x-beliebiger Artikel ein Variantenartikel (page.product.parentId gefüllt) ist oder ein Nicht-Variantenartikel (page.product.parentId nicht gefüllt) und das funktioniert bei mir im Shop tadellos.
Sooooo, nachdem mir jetzt mehrere Agenturen absagten, da die Vater-url ja nur virtuell sei, wäre das wohl nicht möglich.
Und doch hab ich eine eine Lösung gefunden: