Duplicate Content in Shopware 6 verhindern

von: | 10.03.2024

Beim Optimieren der eigenen Seiten für die Suchmaschinen ist es besonders wichtig, sogenannten Duplicate Content zu verhindern. Unter dem Begriff versteht man doppelte Inhalte, die über mehrere eindeutige URLs erreichbar sind. Dadurch werden Suchmaschinen in Ihrem Bestreben behindert, das bestmögliche Ergebnis beziehungsweise die Seite mit den relevantesten Inhalt für den Suchenden zu finden. Außerdem liefert Duplicate Content dem Nutzer aus Sicht der Suchmaschinen keinen Mehrwert und kann deshalb sogar unter Umständen als Spam eingestuft werden, wenn Texte 1 zu 1 von anderen Seiten kopiert werden.

Interner und externer Duplicate Content

Da doppelte Inhalte sowohl innerhalb der eigenen Seite als auch auf Seiten Dritter auftreten können, wird häufig zwischen internen und externen Duplicate Content unterschieden.

Der interne Duplicate Content kann im Kontext von Produkten beispielsweise in folgenden Fällen entstehen:

  • wenn ein Produkt in mehreren Varianten verfügbar ist
  • wenn das Produkt mehreren Kategorien zugewiesen ist
  • wenn die Kategorien im Nachhinein in ihrer Ebenenstruktur umsortiert werden.

In den drei genannten Fällen ändert sich zwar die URL, der Inhalt bleibt aber größtenteils gleich. Bei Kategorien tritt dies beispielsweise bei der Paginierung auf, wenn also die Produkte über mehrere Seiten verteilt sind. Oder wenn eine Kategorie unter mehreren Menüpunkten zu finden ist, beispielsweise im normalen Kategoriebaum und noch einmal zusätzlich unterhalb einer Kategorie wie "Sales". Auch beim Kontaktformular kann dies der Fall sein, wenn es sich in mehreren Menüs befindet.

Dagegen kann externer Duplicate Content entstehen, wenn Produktbeschreibungen vom Hersteller 1 zu 1 übernommen werden, um sich den redaktionellen Aufwand zu sparen. Eine andere Möglichkeit wäre, dass sich ein Dritter die Inhalte aneignet. Problematisch wird es in diesem Fall, wenn dieser dann von Suchmaschinen als "Original" angesehen wird.

Externe Duplikate überarbeiten und einzigartig machen

Inhalte, die von externen Quellen stammen und übernommen werden, sollten grundsätzlich komplett überarbeitet und einzigartig gemacht werden.

Duplikate entfernen und die alten URLs weiterleiten

Zuallererst sollte man alle internen Duplikate, mit Ausnahme der Seite, die das Original darstellt, entfernen. Im Anschluss sollten für die entfernten Seiten entsprechende 301-Weiterleitungen hinterlegt werden, damit die Nutzer und die Suchmaschinen nicht auf einer 404-Fehlerseite landen.

Duplikate über Canonical Tags kennzeichnen

Über die sogenannten Canonical Tags wird den Suchmaschinen mitgeteilt, welche Seite beziehungsweise URL den eigentlichen "Originalinhalt" enthält und dementsprechend auch in den Suchergebnissen angezeigt werden soll. 

Shopware 6 setzt den Canonical Tag automatisch auf den SEO-Pfad, der für die jeweilige Seite festgelegt wurde. Der entsprechende Pfad wird dazu sowohl beim Produkt als auch bei einer Kategorie im Tab "SEO" im Bereich "SEO-URLs" nach der Auswahl des Verkaufskanals beim Feld "SEO-Pfad" eingetragen. Insofern es sich um ein Produkt mit Varianten handelt und alle Varianten die gleiche Canonical-URL verwenden sollen, kann dies durch Aktivieren des Schalters "Verwende dieselbe Canonical-URL für alle Varianten" und die Auswahl der entsprechende Variante beim Feld "Variante für Canonical-URL" erreicht werden.

Im Quelltext der Seite sieht das Ergebnis dann wie folgt aus:

<link rel="canonical" href="https://www.shopurl.de/Variantenprodukt/SWDEMO10005.4"/>

Insofern man bei den Produktvarianten bei der "Storefront-Darstellung" im Bereich der "Produktliste" den Wert "Einzelprodukt anzeigen" und "Variante" ausgewählt hat, kann die zuvor beschriebene Einstellung ohne Einschränkung genutzt werden. Sollte stattdessen der Wert "Hauptprodukt" ausgewählt worden sein, ist dafür eine Anpassung innerhalb der eigenen Theme-App nötig, da beim Feld "Variante für Canonical-URL" nur Varianten und nicht das Hauptprodukt ausgewählt werden kann.

Die nötige Anpassung in der Datei "meta.html.twig" innerhalb des Pfades "Ressources/views/storefront/page/product-detail/" sieht dabei wie folgt aus:

{% sw_extends '@Storefront/storefront/page/product-detail/meta.html.twig' %}

{% block layout_head_canonical %}
    {% set canonicalUrl = page.product.id %}

    {% if page.product.parentId %}
        {% set canonicalUrl = page.product.parentId %}
    {% elseif page.product.canonicalProductId %}
        {% set canonicalUrl = page.product.canonicalProductId %}
    {% endif %}

    <link rel="canonical" href="{{ seoUrl('frontend.detail.page', { productId: canonicalUrl }) }}" />
{% endblock %}

Duplikate über das Robots-Meta-Tag auf Noindex stellen

Um den Suchmaschinen bei der nächsten Überprüfung der Unterseite mitzuteilen, dass diese aus dem Suchindex genommen werden soll, muss dazu das sogenannte Robots-Meta-Tag auf den Wert "noindex" gesetzt werden:

<meta name="robots" content="noindex" />

Die Inhalte werden aber trotzdem weiterhin von den Suchmaschinen gelesen.

Duplikate über die robots.txt für Suchmaschinen sperren

Über eine Textdatei mit dem Namen robots.txt, die im public-Verzeichnis der Seite abgelegt wird, kann den Suchmaschinen die Anweisung gegeben werden, das sie bestimmte URLs nicht mehr aufrufen dürfen. Dadurch wird verhindert, das sie den doppelten Inhalt überhaupt finden und auslesen können. Darüber hinaus sollten die doppelten Inhalte beispielsweise für Google über die Google Search Console und für Bing über die Bing Webmaster Tools aus dem Suchindex der Suchmaschinen manuell entfernt werden.