Ist es möglich in der Artikel URL nicht den gesamten Pfad sondern nur die Hauptkategorie anzugeben?

Hallo liebe Community,

Um meine URLs ein wenig schlanker zu gestalten würde ich gerne die Unterkategorien aus meiner Artikel URL entfernen und nur die Hauptkategorie einzeigen

Derzeit ist es so: /Hauptkategorie/Unterkategorie/Hersteller/ID/Artikelname
Ich hätte es gerne so: /Hauptkategorie/Hersteller/ID/Artikelname

Derzeit steht das im Template: {sCategoryPath articleID=$sArticle.id}/{$sArticle.supplier}/{$sArticle.id}/{$sArticle.name}

Ich muss irgendwie den Path ( {sCategoryPath articleID=$sArticle.id} ) gegen die Hauptkategorie austauschen.

Geht das?
Wenn ja: Wie?

Danke und viele Grüße

Du könntest versuchen,  explode  zu nutzen (der Pfad wird in ein Array umgewandelt, als Trennzeichen wird das Slash (/) herangezogen). Anschließend wird nur das erste Element des Arrays ausgegeben.

Achtung, folgender Code nur als Idee, nicht getestet und wahrscheinlich so auch nicht ohne weiteres anwendbar:

{assign var="fullPath" value={sCategoryPath articleID=$sArticle.id}}
{assign var="explodePath" value="/"|explode:$fullPath}
{$explodePath[0]}/{$sArticle.supplier}/{$sArticle.id}/{$sArticle.name}

Wie gesagt, wurde nicht getestet. Aber vielleicht hilft es :wink:

1 „Gefällt mir“

Habs jetzt einfach mal eingefügt und es hat sofort perfekt geklappt. Habe ein paar Artikel getestet. Sieht gut aus.

Vielen Dank

Ich glaube, so einfach ist das aber nicht. Du musst auch in der Tabelle s_core_rewrite_urls die entsprechenden Einträge generieren.

Deswegen solltest du das in Storefront -> SEO/Router-Einstellungen machen.

Nur den letzten Teil der URL zu verwenden kann auch zu Problemen führen, z.B. wenn es mehrere Seiten gibt, die gleich heißen.

Ich hab das ganze natürlich in Storefront -> SEO/Router-Einstellungen eingefügt.
Dort auch nur bei “SEO-Urls Artikel-Template” und diese sind durch die ID in der URL immer zu 100% unique.

ok, das hört sich gut an. Aber wird die URL, die du in SEO/Router-Einstellungen erstellst nicht auch als URL im Frontend ausgegeben? Normalerweise ist das so.

Genau das ist ja mein Ziel. :wink:

Sry villeicht die Frage nicht genau genug gestellt.

Also das müsste wie gesagt automatisch passieren. Hast du den SEO-Index neu aufgebaut ?

Cache/Performance -> Einstellungen -> SEO -> SEO-Index neu aufbauen

Dann sollte es so sein, wie du es wünscht. Kann allerdings sein, dass es noch einen Moment dauert. Vielleicht noch einmal den Cache und Browser-Cache löschen und mehrmals probieren. Ist etwas träge. Dann sollte es aber gehen.

Ja ich weiß. Hat eh schon alles geklappt. Ich hab den Code der ersten Antwort von templeturtle eingefügt und es hat sofort alles perfekt geklappt.

Aber trotzdem Danke für das Bemühen.

Ich habe die Änderung nur in SEO/Router-Einstellungen vorgenommen und es funktioniert perfekt. Ich habe keine Anpassung am Template gemacht.

Sry falls es da zu einem Missverständnis kam. Aber danke für die zahlreiche Hilfe.