Canonical URL manuell setzen

Hallo zusammen, wir wollen um das Weihnachtsgeschäft noch mitzunehmen mit dem neu entwickelten Shopware 5 parallel zum bestehenden Shop live gehen, weil wir massive SEO-Einbrüche befürchten und das wäre jetzt in der Vorweihnachtszeit eine Katastrophe (altes Shop System ist XT-Commerce und die URL Struktur ist eine komplett andere). Daher würden wir erst mal zweigleisig fahren und mit dem neuen Shop auf einer zweiten Domain online gehen. Da aber einige Kategorien und Artikel Texte natürlich identisch mit dem alten Shop sind, bräuchten wir die Möglichkeit die Canonical URL manuell zu setzen in Shopware 5. Hier gibt es leider im Moment nur ein Plugin für Shopware 4, siehe hier: http://store.shopware.com/satz00640/can … erung.html Könnte mir vorstellen, das so etwas ohne viel Aufwand über Freitext Felder zu lösen ist, in dem der Block (block name='frontend\_index\_header\_canonical') Durch z.b. folgenden Bereich ersetzt wird (bezogen auf Artikelseiten): Für Artikel: <link rel="canonical" href="%7B%24sArticle.attr7%7D"> Für Kategorien: <link rel="canonical" href="%7B%24sCategoryContent.attribute.attribute1%7D"> Ich weiß allerdings nicht, wie ich prüfen kann ob User gerade auf Artikel oder Kategorie Seite ist, um entsprechend den jeweiligen Bereich einzublenden. Evtl. hat ja jemand Erfahrung oder eine bessere Lösung?

{if $Controller|lower eq "listing"} //..Kategorie {/if} {if $Controller|lower eq "detail"} //..Artikel {/if} Btw: Canonical ist für die Suchmaschine, nicht für den User.

1 „Gefällt mir“

Danke für deinen Tipp. Hat leider so nicht geklappt in der index/header.tpl Aber so funktionierts: In der frontend/detail/header.tpl {\* Canonical link \*} {block name='frontend\_index\_header\_canonical'} {if $sArticle.attr7} <link rel="canonical" href="%7B%24sArticle.attr7%7D"> {else} <link rel="canonical" href="%7Burl%20sArticle=%24sArticle.articleID%20title=%24sArticle.articleName%7D">{/if} In der frontend/listing/header.tpl {if $sCategoryContent.attribute.attribute1} <link rel="canonical" href="%7B%24sCategoryContent.attribute.attribute1%7D"> {else} {$pages = ceil($sNumberArticles / $criteria-\>getLimit())} {if {config name=seoIndexPaginationLinks} && $showListing && $pages \> 1} {\* Previous rel tag \*} {if $sPage \> 1} {$sCategoryContent.canonicalParams.sPage = $sPage - 1} <link rel="prev" href="%7Burl%20params%20=%20%24sCategoryContent.canonicalParams%7D"> {/if} {\* Next rel tag \*} {if $pages \>= $sPage + 1} {$sCategoryContent.canonicalParams.sPage = $sPage + 1} <link rel="next" href="%7Burl%20params%20=%20%24sCategoryContent.canonicalParams%7D"> {/if} {elseif !{config name=seoIndexPaginationLinks} || !$showListing} <link rel="canonical" href="%7Burl%20params%20=%20%24sCategoryContent.canonicalParams%7D"> {/if} {/if} {/block} alles wunderbar :slight_smile:

Hallo,

für die die keinen Code anfassen möchten, haben wir zwei Plugins erstellt die dies ermöglichen. Vielleicht hilft es ja jemandem der bei einer Suche hier landet.