Ok, folgender Situation auf einer Kategorieseite:
Ich habe zuvor die UUID einer Kategorie ermittelt und weise diese einer Variablen zu.
{% set pathId = „1b09fccdfacb486aa4864c83faf32996“ %}
Nun hole ich mir mit der ID die zugehörige Struktur aus dem navigation.tree:
{% set fullPath = page.header.navigation.tree[pathId] %}
… und füttere mit dem .category-part die Funktion category_url(), um an die URL der Kategorie zu kommen:
{% set thisPath = category_url(fullPath.category) %}
Das Ergebniss auf der Webseite:
{{ thisPath }}
https://mein.shop.de/meine-kategorie
Die Ausgabe im Debugger:
{{ dump(thisPath) }}
„https://mein.shop.de/meine-kategorie“
Nun versuche ich einen simplen match a la {% if foo in bar %} auf „meine-kategorie“ und bekomme „null“ als Ergebnis!?
Nach X versuchen probiere ich dann, die URL am Slash zu splitten:
{% set pathArr = thisPath|split(„/“) %}
{{ dump(pathArr) }}
Das ERWARTETE Ergebnis:
0: „https“
1: „“
2: „mein.shop.de“
3: „meine-kategorie“
Das TATSÄCHLICHE Ergebnis:
0: „https://dev.verpacking.com/“
1: „navigation“
2: „1b09fccdfacb486aa4864c83faf32996“
WTF!!!?!
Offenbar führt SW hier bei der Ausgabe des Ergebnisses von category_url() irgendeine schräge Ersetzung durch und der Inhalt von thisPath ist - obwohl so dargestellt - alles andere als ein String!
Frage:
Wie komme ich an die URL als echter String?
Ich muss einfach nur prüfen, ob „XY“ in der URL vorkommt (true/false) …
Im Forum bin ich schon auf ein ähnliches Problem gestoßen:
Leider wurde hier keine Lösung gefunden…