Was ist Magento SEO?
Bei Magento SEO geht es um die Optionen zur Suchmaschinenoptimierung im Shopsystem Magento. Dazu gehören Themen wie das Anpassen von Metadaten, der URL-Struktur, der robots.txt-Datei oder der XML-Sitemap.
Wichtig ist bei Magento SEO die Unterscheidung, was die Open-Source-Version von Magento „out of the box“ kann und was erst mit (finanziellem) Mehraufwand möglich ist: mit der bezahlten Adobe Commerce Version, einer kostenpflichtigen Magento-SEO-Extension oder nach individuellem Entwicklungsaufwand durch einen eigenen Magento-Developer.
In diesem Artikel tauchen wir für Dich aus SEO-Sicht in die aktuelle Version von Magento ein, und zwar in Magento 2.4.6 und den zugehörigen Demo-Shop. Die Frage, die uns dabei als SEOs besonders interessiert hat:
Welche für uns wichtigen SEO-Konfigurationen kann die Open-Source-Variante von Magento 2 out of the box?
Dazu direkt ein Disclaimer: Wir sind keine spezialisierten Magento-Developer, haben aber Erfahrung mit der Arbeit in Magento und natürlich der SEO-Betreuung von Onlineshops. Das heißt für Dich: Bitte halte Rücksprache mit Deinem Entwickler-Team, bevor Du Anpassungen an Deinem eigenen Shop vornimmst.
Trotzdem sind wir uns sicher, dass Du aus unserem SEO-Blick auf den Magento 2 Demo-Shop einige Denkanstöße mitnehmen kannst. Wir zeigen Dir auf, welche SEO-Konfigurationen wir out of the box vornehmen konnten und welche Kriterien uns noch gefehlt haben. Mit dieser Übersicht kannst Du Dich dann auf die Suche nach einer passenden SEO-Extension begeben und ins Gespräch mit Deinen Entwicklern und Entwicklerinnen gehen.
Im nächsten Abschnitt stellen wir das Shopsystem Magento vor und tauchen danach direkt in die geprüften SEO-Kriterien ein. Wenn Du selbst einen Demo-Shop aufsetzen möchtest, wirf vorab einen Blick auf den Abschnitt Demo-Shop-Setup.
Wenn Du Dich einfach mal in einen Magento 2 Demo-Shop einloggen möchtest, gibt es auch einige Anbieter, die eine öffentlich zugängliche Version hosten (Quellen: Magentip oder Mag-tutorials.de). Zu guter Letzt gibt es noch einen Abschnitt zu SEO-Extensions und Entwickler-Ressourcen als Startpunkt zur Ergänzung der Basis-Magento-Version.
Was ist Magento?
Aber lass uns zunächst die Basics klären: Was ist Magento eigentlich? Spätestens seit der Übernahme durch den Konzernriesen Adobe ist das eine berechtigte Frage.
Magento ist eine Software für Onlineshops, die es bereits seit 2008 gibt und sich seitdem großer Beliebtheit erfreut. Im Juli 2023 sind im World Wide Web über 140.000 Magento Shops online (Quelle: BuiltWith). Während Magento zwischenzeitlich zu eBay gehörte, wurde es im Jahr 2018 komplett an Adobe verkauft. Magento 2 ist die aktuelle Hauptversion der Software, die seit 2015 auf dem Markt ist (Quelle: Wikipedia).
Nach der Übernahme durch Adobe wurde die kostenfreie Community-Variante dann zu „Magento Open Source“ (Quelle: GitHub). Zudem bietet Adobe mit „Magento Commerce“ – mittlerweile „Adobe Commerce“ genannt – eine bezahlte Premium-Version (Quelle: Adobe). Letztere bietet zusätzliche Funktionen und Support, der Softwarekern von Magento ist jedoch bei beiden Varianten der Gleiche (Quelle: Adobe). Aus diesem Grund wurde auch die Dokumentation ab Version 2.4 konsolidiert (Quelle: GitHub).
Die allgemeine Dokumentation rund um das Shopsystem Magento findest Du nun in der sogenannten „Adobe Experience League“ (Quelle: Adobe). Daneben gibt es noch die technischere „Adobe Commerce Developer Documentation“ (Quelle: Adobe).
Auf welche SEO-Kriterien musst Du bei einem Shopsystem wie Magento achten?
Lass uns das Pflaster gleich zu Beginn abreißen: Out of the box sind die SEO-Optionen im Magento Shop begrenzt – oder nur recht manuell umzusetzen. Daher ist ein Überblick zu den relevanten SEO-Kriterien umso wichtiger, egal ob für die Auswahl einer ergänzenden Magento-Extension oder für das Entwickler-Briefing.
Folgende Bereiche und Fragestellungen betrachten wir in diesem Artikel genauer. Diese spielen nicht nur für Magento SEO eine Rolle, sondern sind grundsätzliche Kriterien, die Du bei jedem Shopsystem im Blick haben solltest.
- Informationsarchitektur & URLs: Wie sieht die Default-URL-Struktur in Magento 2 aus und was ist bei der URL-Validierung zu beachten?
- HTTP & Security: Welche Status Codes und Protokolle können eingesetzt werden? Was passiert im System bei der Anpassung der URL-Struktur?
- Onpage & Content: Wie können Title Tag, Meta Description & H1 angepasst werden? Welche Content-Elemente stehen in Magento 2 zur Verfügung?
- Crawling, Indexierung & Interne Verlinkung: Wie kann in Magento 2 das Crawling und die Indexierung gesteuert werden? Durch welche Elemente wird die interne Verlinkung beeinflusst?
- Weitere Überlegungen: Internationalisierung & JavaScript: Wie kann man Magento 2 in mehreren Sprachen/Ländern aufsetzen und welche Rolle spielt JavaScript im Shop-System?
Deep Dive in die Fähigkeiten des Demo-Shops
Nun nehmen wir den Magento 2 Demo-Shop genau unter die Lupe. In den Infoboxen findest Du weiterführende Infos und Fragestellungen, die es bei den einzelnen Bereichen zu beachten gilt. Diese werden durch praktische Insights aus dem Magento 2 Demo-Shop ergänzt.
Konkrete Klickpfade im Admin-Panel von Magento 2 sind dick & kursiv gekennzeichnet. Bedenke dabei, dass unser Demo-Shop eine englischsprachige Admin-Oberfläche hatte. Die deutschen Bezeichnungen der Menüpunkte sollten jedoch ähnlich oder leicht abzuleiten sein.
Zudem liefern wir Dir bei einigen Punkten eine erste Einordnung, ob Du und Dein Team hier mit Extensions oder Custom Development nachbessern sollten.
1) Informationsarchitektur & URLs
Eine durchdachte Informationsarchitektur legt die Grundlage für jeden Onlineshop. Magento 2 bietet Dir eine gute Default-Architektur, um Dein Produktportfolio strukturiert abzubilden. Es gibt verschiedene Hierarchieebenen, mit denen Du auch mehrere Shops mit der gleichen Warenwirtschaft in einem Verwaltungspanel betreiben kannst.
Damit hast Du die Wahl, ob Du globale Einstellungen für alle Stores vornehmen möchtest oder gezielte Einstellungen für nur einen Store. Ein klassischer Anwendungsfall sind hier internationale Shops, die auf verschiedenen Domains platziert sind.
Der Demo-Shop ist im „Single Store Mode“ aufgesetzt, aber in der Magento 2 Dokumentation kannst Du mehr über die verschiedenen Scopes und Hierarchieebenen für komplexere Projekte erfahren (Quelle: Adobe).
Was ist bei der URL-Validierung zu beachten?
An sich ist es Google egal, wie Deine URLs aussehen. Schöne (oder besser formuliert: suchmaschinenfreundliche) URLs bekommen keinen Ranking-Bonus per se. Was trotzdem entscheidend ist: Hab einen genauen Überblick, welche URL-Muster Dein System generiert.
Denn jede noch so kleine Änderung bedeutet, dass die Suchmaschine eine komplett neue URL sieht. Wenn zum Beispiel sowohl https://example.com/page/ als auch https://example.com/PAGE/ mit Status Code 200 erreichbar sind und Dein System dort die gleichen Inhalte ausspielt, handelt es sich dabei um Duplicate Content.
Daher ist es sinnvoll, eine URL-Validierung durchzuführen. Dabei prüfst Du systematisch, welche URLs entstehen können und was passiert, wenn Du diese manipulierst (z.B. Groß- statt Kleinschreibung).
Prüfe bei der URL-Validierung, was passiert, wenn Du in einer URL …
- … die Groß- & Kleinschreibung veränderst.
- … einen Trailing Slash am Ende hinzufügst bzw. entfernst.
- … „http“ statt „https“ einträgst.
- … „www.“ weglässt oder hinzufügst.
- … bei der Erstellung Special Characters (z.B. „ä“, „ß“, „é“, „%“) verwendest.
Im Idealfall werden alle Variationen per 301 auf eine einzige URL-Variante weitergeleitet. Die Erstellung von URLs mit Special Characters sollte erst gar nicht möglich sein.
Das Default-Setup von Magento 2 bietet hier bereits gute Möglichkeiten. Du kannst im Konfigurationsmenü unter Catalog > Categories/Products > Search Engine Optimization > URL Key einen URL-Key festlegen. Daraus wird dann automatisch der URL-Pfad generiert.
Hierbei werden einige Fälle der URL-Validierung direkt bereinigt. So ist die Erstellung von URLs mit Großbuchstaben oder Special Characters erst gar nicht möglich. Diese werden automatisch zu kleinen a-z Buchstaben umgeschrieben, entfernt oder bei Leerzeichen durch einen Bindestrich „-“ ersetzt (s. Abbildungen 2 & 3).
Zudem werden URLs bei veränderter Groß- & Kleinschreibung korrekt weitergeleitet. Für die Weiterleitung von HTTP zu HTTPs ist ein TLS/SSL-Zertifikat nötig. Damit kannst Du die Weiterleitung dann global einrichten (Quelle: Adobe).
Eine Weiterleitung zu Deiner gewünschten Subdomain wie „www.“ können Deine Entwickler:innen über eine Server-Einstellung unabhängig von Magento 2 vornehmen, zum Beispiel in der „.htaccess“-Datei bei einem Apache-Server.
Von Haus aus haben alle Magento 2 URLs die Endung „.html“. Grundsätzlich können diese genauso gut ranken, aber idealerweise enden Deine URLs mit einem Trailing Slash „/“.
Ein einfacher Grund, der für URLs mit Trailing Slash am Ende spricht, ist die einfachere Analysierbarkeit. So kannst Du zum Beispiel in der Google Search Console leichter nach der Performance eines bestimmten Kategoriepfads inkl. der darunter liegenden Unterkategorien filtern, wenn das Kategorieverzeichnis klar durch einen Trailing Slash am Ende abgegrenzt ist.
Magento 2 bietet Dir die Option, die Grundeinstellungen der URL-Struktur anzupassen und von Beginn an auf die Schreibweise mit Trailing Slash umzustellen. Gehe dazu im Verwaltungspanel auf den Menüpunkt Stores > Configuration > Catalog > Search Engine Optimization > Product/Category URL Suffix, entferne dort das „.html“ und trage bei beiden Feldern einen Trailing Slash „/“ ein (s. Abbildung 4). Im Anschluss sollten alle „.html“-URLs auf diese neue Version weitergeleitet werden. Abbildung 4 zeigt auch die Einstellung „Use Categories Path for Product URLs“, die sinnvollerweise in den Grundeinstellungen deaktiviert ist. So ist der Pfad der Produkt-URLs unabhängig von der Kategoriestruktur.
Das URL-Suffix ist übrigens auch eine Option, über die Du den Seitentyp (z.B. Kategorie/Produkt) in der URL-Struktur einbauen kannst. Wenn Du an alle Produkt-URLs „/p/“ anhängst, kannst Du diese in der GSC schnell herausfiltern (s. Abbildung 5). Um ein solches Verzeichnis nicht erst am Ende der URL hinzuzufügen, sondern gleich nach der Domain, ist Custom Development nötig (s. Dev-Ressource 1).
Achtung: Die Umstellung des URL-Suffixes triggert sehr viele automatische URL-Weiterleitungen und ist zudem fehleranfällig (s. später in Abbildungen 10 & 11). Idealerweise ist das eine der ersten Einstellungen, die Du beim Setup des Shops vornimmst. Wenn Dein Shop bereits Historie hat, solltest Du daher genau abwägen, ob die Umstellung den möglichen Aufwand wert ist.
Wie sieht die Default-URL-Struktur in Magento 2 aus?
In der URL-Struktur von Magento 2 gibt es grundsätzlich zwei Seitentypen: Produkt-URLs (magento.com/joust-duffle-bag.html) und Kategorie-URLs (magento.com/gear.html). Neben den Kriterien zur URL-Validierung gibt es auch bei der URL-Struktur weitere Fragen, die aus SEO-Sicht geklärt werden sollten.
Bei der URL-Struktur sind folgende Kriterien zu beachten:
- Sind Produkt-URLs unabhängig von Kategorien aufgehängt?
- Hängt der URL-Pfad mit der verwendeten H1-Überschrift zusammen?
- Werden für Produktvarianten eigene URLs generiert?
- Können die verschiedenen Seitentypen anhand der URLs getrennt werden (z.B. durch Ordner wie /c/ oder /p/ im URL-Pfad)?
- Welche URL-Pfade generiert die interne Suche?
- Welche Parameter werden vom Shopsystem verwendet?
Mach Dir in diesem Schritt ein klares Bild darüber, welche URL-Muster Dein Magento 2 Shop generieren kann. Das legt die Grundlage für effizientes Management von Crawling und Indexierung, worauf wir im Abschnitt 4 noch genauer eingehen.
Wie oben beschrieben, ist die Default-URL-Struktur recht einfach gehalten. Dabei ist bereits positiv aufgefallen, dass die Produkt-URLs standardmäßig unabhängig von der Kategoriestruktur aufgehängt sind. Dies ist wichtig, um Produkte ohne URL-Duplikate verschiedenen Kategorien zuordnen zu können. Das kannst Du theoretisch ändern (s. Abbildung 4), aber aus SEO-Sicht gibt es dafür keinen Grund.
Ähnlich positiv ist, dass die H1-Überschrift keinen Einfluss auf den URL-Pfad hat und dass Varianten des gleichen Produkts ohne zusätzliche URLs angezeigt werden. Wie oben erwähnt, kann ein individueller Ordner zur Identifizierung von verschiedenen Seitentypen nur über das URL-Suffix (s. Abbildungen 4 & 5) oder mit Custom Development eingefügt werden. Auf die URL-Muster der internen Suche und Parameter gehen wir genauer in Abschnitt 4 ein.
2) HTTP Status Codes & Security
HTTP ist die Sprache im Internet und auch ein wichtiges SEO-Werkzeug. Schließlich macht es einen Unterschied, ob zum Beispiel eine Weiterleitung mit dem Status Code 302 (temporär) oder dem Status Code 301 (permanent) eingerichtet ist. Mehr Infos dazu gibt’s im Artikel von Tamara Franz (Quelle: OMT).
Folgende Kriterien gilt es im Bereich HTTP & Security zu beachten:
- Es können einzelne Weiterleitungen (301/302) manuell gesetzt werden.
- URLs werden nach Anpassungen automatisch weitergeleitet.
- Es gibt die Option, neben Status Code 404 auch 410 ausspielen zu lassen.
- Das HSTS-Protokoll kann implementiert werden (Quelle: HSTS Preload).
Was passiert im System bei der Anpassung der URL-Struktur?
Wie bereits erwähnt, kannst Du die URL-Pfade im Konfigurationsmenü unter dem Menüpunkt Catalog > Categories/Products > Search Engine Optimization > URL Key einzeln definieren. Was aber passiert hier bei nachträglichen Änderungen?
Magento 2 hat hier grundsätzlich vorgesorgt, denn bei einer Änderung wird direkt eine 301-Weiterleitung eingerichtet. Im Beispiel (s. Abbildung 6) haben wir die Default-URL magento.com/women.html zu magento.com/women-products.html geändert.
Mit dem Häkchen bei „Create Permanent Redirect for old URL“ stellst Du sicher, dass die alte URL im Anschluss nicht ins Leere läuft. Die Voraussetzung dafür sind die Grundeinstellungen in Abbildung 7 unter Stores > Configuration > General > Web. Im Vergleich zum Default-Setup ist hier nur bei Auto-redirect to Base URL ein 301 Status Code (statt 302) eingestellt.
Die Auswirkung einer Änderung des URL-Keys kann man im Verwaltungspanel im Bereich Marketing > URL Rewrites beobachten. Dort wurde automatisch der 301-Redirect vom alten auf den neuen Kategoriepfad eingerichtet (s. Abbildung 8). Zudem wird der interne CMS-Pfad nun auch der neuen URL zugeordnet (s. Abbildung 9).
Was besonders ins Auge sticht: Die Änderung eines einzigen URL-Keys in der Kategorie „women“ löst mehrere URL-Rewrites in allen darunterliegenden Kategorien aus. Magento 2 hat hier einige Automatismen eingebaut, die die SEO-Signale der Rankings dieser URLs erhalten können.
Achtung: Verlasse Dich nicht auf die automatisierten Redirects von Magento!
Diese Automatismen decken nicht immer alle relevanten Fälle ab. Nach der Änderung des URL-Pfades haben wir die Magento-Einstellung getestet, die die „.html“-Endung bei allen URLs entfernt (s. Abbildung 4). Nach der Umstellung gibt die URL mit dem vorher geänderten Pfad magento.com/women-products.html nun einen 404-Fehler zurück (s. Abbildung 10).
Gleichzeitig leiten die anderen „.html“-URLs jedoch korrekt auf die neue URL-Variante mit Trailing Slash weiter. Was ist passiert? Magento 2 hat wieder einen automatischen Redirect zu der Version ohne „.html“ erstellt, aber dieser bezieht sich auf die ursprüngliche URL-Variante (s. Abbildung 11).
In solchen Fällen muss im Zweifel nachgesteuert werden – v.a. wenn die „women-products.html“ URL in der Zwischenzeit Ranking-Signale gesammelt hat. Die schnellste Option ist sicher, dass Du im Admin-Bereich unter Marketing > URL Rewrites einfach manuell einen Redirect für die entsprechenden URLs hinzufügst.
Eine weitere Option ist die Einrichtung von Weiterleitungen direkt auf dem Server. Für unser Test-Setup verwenden wir einen Apache-Server und können diese Konfigurationen in der „.htaccess“-Datei vornehmen. Zur Demonstration haben wir eine Regel hinzugefügt, die unsere Beispiel-URL „/women-products.html“ auf die nun relevante URL „/women-products/“ weiterleitet (s. Abbildung 12). Damit das klappt, muss unter Stores > Configuration > General > Web die Option „Use Web Server Rewrites“ aktiviert sein (s. Abbildung 7).
Randnotiz: Die „.htaccess“-Datei gehört nicht zu Magento per se, sondern zu den Server-Einstellungen. Im Fall unseres Demo-Shops wurde Magento 2 mit XAMPP installiert. Das A in XAMPP steht für „Apache“, also den Server, auf dem der Magento-Shop gehostet wird. Weitere Server-Anbieter wie Nginx haben keine .htaccess-Datei. Dafür gibt es andere Config-Optionen, um ähnliche Redirects einzurichten (Quelle: Dev-Ressource 2).
Grundsätzlich scheint Magento 2 über das Häkchen bei „Create Permanent Redirect for old URL“ aber stets zu versuchen, alle relevanten Redirects einzurichten, wenn es eine Änderung des URL-Keys gab. Wir haben dies mit einigen weiteren URL-Key-Anpassungen getestet, dieses Mal für den Kategoriepfad „/tops-women/“.
Die URL magento.com/women-products/tops-women/ wurde im Anschluss auf magento.com/women-products/women-tops/ weitergeleitet.
Ein Blick in die URL-Rewrites zeigt, dass auch nach einer erneuten Änderung alle relevanten Redirects eingerichtet sind – und nun sogar teilweise doppelt existieren (s. Abbildung 15).
Trotzdem: Verlasse Dich nicht auf die automatischen Redirects von Magento 2! Das Beispiel der „.html“-Umstellung zeigt, dass hier ohne zusätzliche Prüfung SEO-Signale schnell ins Leere laufen können (s. Abbildung 10).
Prüfe Deine Redirects! Magento unterstützt Dich mit dem Einrichten von automatischen Weiterleitungen. Aber das Beispiel zeigt, dass nicht immer alle Fälle und Edge Cases abgedeckt sind.
Daher gilt: Lege vorab fest, welche URL-Pfade Du ändern möchtest, welche URLs davon betroffen sind und welche Weiterleitungen Du brauchst, um alle SEO-Signale zu übertragen.
Achte hier auf folgende Relevanzkriterien:
- Hat die URL wichtige Ranking-Signale, die übertragen werden sollten?
- Gibt es Backlinks, die auf die alte URL zeigen und weitergeleitet werden sollten?
- Ist die URL intern verlinkt? Falls ja, korrigiere diese Links.
Teste alle URLs nach den Anpassungen im Verwaltungspanel oder der „.htaccess“-Datei. Richte zudem ein Monitoring-Setup ein, das Dich bei ungewollten Status Codes sofort benachrichtigt.
Welche Status Codes und Protokolle können eingesetzt werden?
Im Verwaltungspanel unter dem Menüpunkt Marketing > URL Rewrites kannst Du prüfen, welche Redirects aktuell eingerichtet sind und bei Bedarf auch manuell entscheiden, ob hier ein 301 oder 302 Status Code ausgespielt werden soll.
Zudem sollte für bestimmte URLs die Option bestehen, einen Status Code 410 auszuspielen. Dies teilt dem Googlebot direkt mit, dass die URL permanent ‘weg’ ist und nicht erneut gecrawlt werden muss. Ein Anwendungsfall können URLs sein, die aus dem Produktkatalog entfernt wurden. Diese Option scheint es in Magento 2 nur mit zusätzlichem Entwicklungsaufwand zu geben (Dev-Ressource 3).
Das HSTS-Protokoll bietet zusätzliche Sicherheit, da es den Browser bei jeder Anfrage zu einer HTTPS-Verbindung zwingt. Unter Stores > Configuration > Web > Base URLs (Secure) hast Du die Option, das HSTS-Protokoll zu aktivieren. Prüfe zudem, ob für Deine Domain noch weitere Schritte nötig sind, zum Beispiel das Einreichen der Domain zu der „HSTS Preload List“ von Chrome (Quelle: HSTS Preload).
3) Onpage-Optimierung & Content-Elemente
Eine gute Informationsarchitektur ist ohne eine durchdachte und zum Search Intent passende Onpage-Optimierung nicht viel wert. Neben den für die Nutzer:innen sichtbaren Content-Elementen sind für uns zudem die Informationen im HTML-Head entscheidend.
Wie können Title Tag, Meta Description & H1 angepasst werden?
Starten wir mit den Onpage-Elementen, die für die Suchmaschinenoptimierung fundamental sind: der Title Tag, die Meta Description und die H1-Überschrift. Die H1-Überschrift basiert auf dem Kategorienamen, den Du im Verwaltungspanel unter dem Menüpunkt Catalog > Categories/Products > Category/Product Name festlegst (s. Abbildung 17). Da dieser Text auch als Ankertext in der internen Verlinkung vorkommt, möchtest Du die H1-Überschrift möglicherweise unabhängig davon bearbeiten, was mit etwas Entwicklungsarbeit möglich ist (Dev-Ressource 4).
Im Bereich Catalog findest Du zudem sowohl für Produkte als auch für Kategorien einen Abschnitt Search Engine Optimization. Hier kannst Du jeweils einen individuellen Title Tag (Seitentitel) und eine Meta Description festlegen. Die Meta Keywords sind nicht relevant.
Trägst Du nichts ein, nimmt Magento 2 für den SEO Title per Default den Kategorienamen, während die Meta Description leer bleibt. Zudem kannst Du unter Content > Configuration Deine eigenen Defaults festlegen. Wähle dazu die gewünschte Ebene in Deinem Shop-Setup und fülle die Felder im Bereich HTML Head aus (s. Abbildung 18). Neben den Fallbacks für den Seitentitel und die Meta Description kannst Du auch ein Präfix/Suffix für Deinen Title angeben. Dafür bietet sich häufig der Markenname Deines Shops an.
Für Produkt-URLs gibt unter Stores > Configuration > Catalog > Product Fields Auto-Generation die Option Fallback-Templates für die Produkt-Metadaten zu definieren. Hier kannst Du folgende Platzhalter einsetzen: {{name}}, {{description}} sowie {{sku}} (Quelle: Adobe).
Je nachdem, wie groß Dein Store ist, möchtest Du gegebenenfalls auch mit weiteren Platzhaltern arbeiten, die das Erstellen und Hochladen von Onpage-Elementen skalierbar machen. Diese Funktionalität gibt es leider nicht out of the box. Aber auch hier kannst Du mit einer SEO-Extension nachbessern und Dir so viel manuelle Arbeit ersparen.
Randnotiz zu den Meta Keywords: Tatsächlich kannst Du diese im Bereich „Search Engine Optimization“ definieren – auch wenn sie für Google keine Relevanz als Rankingfaktor haben. Du kannst Dir überlegen, ob Du das Feld noch für Deine Content-Strategie verwenden möchtest, zum Beispiel als Tag, um jedem Inhalt ein Targeting zuzuordnen. Aber dafür gibt es sicher bessere Lösungen, die nicht für alle Deine Wettbewerber:innen öffentlich sichtbar sind (Quelle: ahrefs.com).
Welche Content-Elemente stehen in Magento 2 zur Verfügung?
Content ist King – auch bei Magento 2? Ein Onlineshop ist viel mehr als nur eine Ansammlung von Produkten mit einem Checkout-Prozess.
Die inhaltliche Ausgestaltung Deines Stores entscheidet darüber, ob Du Deine Kunden zum richtigen Zeitpunkt mit den richtigen Inhalten abholen kannst.
Der richtige Content kann viele Facetten haben:
- Ein erster Berührungspunkt auf der User Journey: „Was ist …?“
- Ein beratender Kauf-Guide („Der beste …?“), der von einem Fachexperten mit Autorenprofil geschrieben wurde.
- Ein „How-to-Guide“, der ein Problem Schritt für Schritt löst – und mit den passenden strukturierten Daten bereits in den Suchergebnissen ins Auge sticht.
- Eine Kategorieseite mit einem Teaser-Text, der die richtigen Entscheidungskriterien für die Produktwahl aufzeigt.
- Eine Produktseite mit einer ausführlichen Beschreibung, die keine Detailfragen vor dem Kauf offen lässt.
- Ein FAQ-Bereich, der weiterhilft, bevor der Kundenservice angerufen wird.
Am Ende zählt: Verstehe, welche Reise Deine Kunden bis zum Kauf und auch danach zurücklegen und hole sie bei jedem Schritt mit Inhalten ab, die zum aktuellen Search Intent passen. Eine gewisse Flexibilität bei der Verwendung von Content-Elementen macht diese Aufgabe sicher leichter. Magento 2 bietet Dir unterschiedliche Möglichkeiten, um Deine Inhalte aufzubereiten.
Magento Page Builder
In der Magento Version 2.4.3 (August 2021) wurde mit dem Page Builder eine neue Funktionalität integriert, um das Erstellen von Inhalten und Layouts intuitiver und flexibler zu gestalten (Quelle: Adobe).
Unseren Demo-Shop haben wir mit der Magento Version 2.4.6 aufgesetzt, weshalb der Page Builder bereits per Default integriert und aktiviert war. Unter Stores > Configuration > General > Content Management > Advanced Content Tools kannst Du das bei Bedarf anpassen (S. Abbildung 19).
Die Einführung des Page Builders hat vor allem einen Vorteil mit sich gebracht: eine flexible Seitengestaltung mit wenig Einsatz von Entwicklerressourcen. Der intuitive Drag-and-Drop-Editor macht das individuelle Zusammenstellen von responsiven Layouts einfach. Die erstellten Layouts kannst Du dann auch als Templates für später speichern (s. Abbildung 20) und beim Anlegen von neuen Kategorien unter Catalog > Category im Abschnitt Content > Edit with Page Builder > Apply Template wieder einsetzen (s. Abbildung 21).
Da H1 und Produkte auf Kategorieseiten automatisch ausgespielt werden, behalten wir im Beispiel in Abbildung 21 nur das Text-Element des Layouts. Die anderen Seitenbausteine wie H1, Sidebar und Produkte werden zusätzlich zu diesem Template-Text-Element ausgespielt.
Auf diesem Weg hat die Einbindung eines Teaser-Texts in das Kategorie-Layout gut geklappt. Was sich allerdings bereits als eine Herausforderung darstellt: ein Layout, das ein Textfeld mit weiterführenden Infos zur Kategorie unterhalb der Produkte anzeigt. Der Grund: Die definierten Template-Content-Elemente werden nur über den Produkten ausgespielt.
Der Kategorietext unterhalb der Produkte klappt nur auf Umwegen und für jede Kategorie einzeln: Im Default-Setup musst Du Dir für jeden Kategorietext einen eigenen statischen CMS-Block (Content > Blocks) erstellen und diesen dann in ein zur Kategorie zugeordnetes Widget (Content > Widgets > Widget Options > Select Block) einfügen.
Im Widget-Bereich (Content > Widgets > Storefront Properties > Layout Updates) kannst Du dann eine konkrete Kategorie auswählen und genau angeben, wo im Seitenverlauf das Widget ausgespielt werden soll (s. Abbildung 22). In den Kategorie-Settings (Catalog > Categories) selbst musst Du dann nur noch Display Settings > Display Mode > Static block and products wählen, damit die definierten Widgets zusammen mit den Produkten ausgespielt werden. Mit etwas Entwicklungsaufwand gibt es jedoch auch elegantere Lösungen für diesen Fall, die einfacher zu pflegen sind (Dev-Ressource 5).
Wenn Du außerdem einen großen Blogbereich für Deinen Magento 2 Shop planst, solltest Du auf eine zusätzliche Extension zurückgreifen. Diese hilft Dir dabei, die Inhalte richtig zu organisieren und reduziert die manuelle Arbeit bei der Erstellung.
Strukturierte Daten
Strukturierte Daten spielen in der Suchmaschinenoptimierung eine wichtige Rolle. Damit kannst Du mit Deinen Snippets in den Suchergebnissen mehr Platz einnehmen.
Einen kompletten Überblick über alle Optionen, wie Du Deine Website mit strukturierten Daten auszeichnen kannst, findest Du auf schema.org. Ein Blick in Google’s Search Gallery (Quelle: Google) zeigt, welche Auszeichnungen Google mit einer besonderen Anzeige in den SERPs belohnt. Im Rich Results Testing Tool (Quelle: Google) kannst Du dann überprüfen, ob Du die Auszeichnung korrekt eingebunden hast und ob Google Elemente aus der Search Gallery in Deinem Quellcode wiederfindet. Alles Weitere über Rich Results findest Du im Guide von Julia Dombrowe (Quelle: OMT).
Der Test mit dem Rich Results Tool (Quelle: Google) zeigt, dass strukturierte Daten in Magento 2 nur minimal eingebunden sind. Auf den Produktseiten befindet sich das korrekte Markup für Product Snippets (Quelle: Google) sowie für Review Snippets (Quelle: Google). Auf den getesteten Kategorien sowie der Homepage konnte kein Markup entdeckt werden.
Für eine flächendeckende und vor allem dynamische Einbindung von weiteren strukturierten Daten greifst Du am besten auf eine SEO-Extension zurück.
Es gibt allerdings auch einige Arten von Structured Data, die Du selbst in der Default-Variante von Magento 2 manuell hinzufügen kannst. Dabei ist die Voraussetzung, dass die ausgezeichneten Informationen statisch sind und nicht dynamisch (z.B. Produktpreise) angepasst werden müssen.
Ein Beispiel für eine solche statische Einbindung von strukturierten Daten: Du könntest im Page Builder einen HTML-Block als Content-Element einfügen und darin Microdata-Markup (Quelle: Google) um die HTML-Inhalte legen, beispielsweise das FAQ-Microdata-Markup (Quelle: Google) um einen Textabschnitt mit Fragen und Antworten.
4) Crawling, Indexierung & Interne Verlinkung
Crawling, Indexierung und die interne Verlinkung gehen in der Suchmaschinenoptimierung Hand in Hand. Daher betrachten wir diese drei Bereiche gemeinsam (s. Abbildung 23). Rein aus SEO-Sicht sind auf Deiner Website im Idealfall nur für die Suche relevante URLs indexiert, intern verlinkt und für den Googlebot beim Crawlen erreichbar.
Natürlich existiert eine Webseite nicht nur, um in einer Suchmaschine aufzutauchen. Es gibt viele Stakeholder mit eigenen Interessen, die sich nicht immer in einem monatlichen Suchvolumen widerspiegeln.
- Nutzer:innen möchten über die interne Shop-Suche und Kategoriefilter schnell ihr perfektes Produkt finden.
- Die Presseabteilung möchte Unternehmensnews veröffentlichen.
- Das Google Ads Team möchte eigene Kampagnenseiten erstellen.
- Nutzer:innen möchten nur schnell zu den AGBs, Kontaktformularen oder dem Impressum navigieren.
Prüfe den Umgang mit Deinen URL-Mustern! Du solltest jedes URL-Muster einzeln betrachten und entscheiden, wie Du das Crawling, die Indexierung sowie die interne Verlinkung handhaben möchtest. Behalte hier die Interessen aller Stakeholder im Hinterkopf, bevor Du eine Entscheidung triffst.
Folgende Shop-Elemente & Funktionen solltest Du in der Regel betrachten:
- Interne Suche
- Parameter auf Kategorieseiten zur Filterung und Sortierung von Produkten
- Paginierung von Kategorieseiten oder anderen Inhalten
- Tracking-Parameter
Dabei stehen Dir zur Steuerung verschiedene Werkzeuge zur Verfügung:
- „noindex“ via Meta-Robots-Tags
- „noindex“ via HTTP-Header
- Canonical-Tags
- robots.txt-Datei
- HTML-Sitemap
- XML-Sitemap
- Linkmodule: Navigation, Footer, Breadcrumbs, Ähnliche Produkte
Wie kannst Du mit Magento 2 Crawling & Indexierung steuern?
Magento 2 gibt Dir grundsätzlich einige Tools zur Steuerung von Crawling und Indexierung an die Hand. Allerdings gibt es dennoch einige Settings, die durch SEO-Extensions oder Custom-Development nachgebessert werden sollten. So ist beispielsweise allein das Setzen eines Noindex-Tags für einzelne Kategorien oder Produkte im Default-Demo-Shop nicht möglich (s. Dev-Ressource 6).
Paginierung in Magento 2
Die Paginierung ist ein oft diskutiertes SEO-Thema, das für jeden Onlineshop relevant ist. Das Setup der Paginierung kann in der Theorie die Auffindbarkeit Deiner Produkte beeinflussen – aber auch viele irrelevante URLs in den Index spülen.
Prüfe die Relevanz Deiner Paginierung und erwäge eine Deindexierung! Einen guten Überblick zur Paginierung bei Onlineshops findest Du im Artikel von Darius Erdt und Stefan Gottwald (Quelle: Website Boosting). Da die URLs ab Seite 2 der Paginierung kaum Mehrwert liefern, werden diese in der Praxis meist auf Noindex gesetzt – auch wenn dieses Vorgehen nicht Teil der Best Practice Empfehlung von Google ist (Quelle: Google). Zudem trägt die Paginierung selbst in der Regel wenig zur Link-Juice-Verteilung bei und Du kannst Dich auch nicht darauf verlassen, dass alle Paginierungsseiten gecrawlt werden – egal ob sie Index oder Noindex sind. Daher solltest Du sicherstellen, dass Deine Produkte auf anderen Wegen intern verlinkt sind, gecrawlt werden und Linkpower erhalten, zum Beispiel über einen gut ausgebauten Kategoriebaum oder Linkmodule wie „Ähnliche Produkte“. Dies ist besonders dann relevant, wenn Deine Produkte selbst eine konkrete Suchnachfrage besitzen. Die Auffindbarkeit und das regelmäßige Crawling Deiner umsatzrelevanten Produkte sollte zudem über eine Produkt-XML-Sitemap gewährleistet werden. Bei einem weiteren Punkt zur Paginierung sind sich alle Quellen einig: Seite 2 & Co. sollen nicht per Canonical auf die erste Seite der Paginierung zeigen, sondern einen Self-Canonical haben.
Bei Magento 2 hast Du in Sachen Paginierung zunächst die Wahl zwischen zwei Layouts, um Deine Produkte auf einer Kategorieseite anzuordnen: ein Grid-Layout und ein List-Layout. Das Default-Layout kannst Du im Verwaltungspanel unter dem Menüpunkt Stores > Configuration > Catalog > Storefront festlegen. Neben dem Layout selbst kannst Du hier auch die Anzahl der Produkte sowie Paginierungsschritte anpassen (s. Abbildungen 24, 25 & 26).
Es bleibt die Frage, wie wir bei Magento 2 mit der Paginierung aus Indexierungssicht umgehen können. Hier bereits vorweggegriffen: Die Kategorieseiten generieren neben der Paginierung weitere SEO-irrelevante Parameter, zum Beispiel die Sortierung nach Preis: magento.com/men-products/tops-men/tees-men/?product_list_order=price
Für diese Fälle bietet Magento 2 im Konfigurationsmenü unter Stores > Configuration > Catalog > Search Engine Optimization zwei Optionen: Use Canonical Link Meta Tag For Categories/Products. Die Einstellung „Yes“ sorgt dafür, dass diese irrelevanten Parameter-Kombinationen direkt einen Canonical Tag auf die Haupt-Kategorie erhalten (s. Abbildung 27).
Achtung: Dadurch wird auch ein Canonical von allen paginierten Seiten auf die Seite 1 der Kategorie gesetzt, wovon selbst in den Google Guidelines abgeraten wird (Quelle: Google).
Zudem haben wir nach der Canonical-Konfiguration in unserem Demo-Shop auf vielen Seiten „Self-Canonical“-Tags auf alte URL-Varianten entdeckt (s. Abbildung 28).
Dadurch entsteht mit den Weiterleitungen auf die korrekten URL-Varianten quasi ein Redirect-Canonical-Loop – und die Verwirrung auf Googles Seite ist vorprogrammiert!
Es bleibt die Frage, ob dieser Loop nur in der Entwicklungsumgebung entsteht oder auch in einem Live-Shop. In jedem Fall gibt es Optimierungsbedarf bei den Canonicals. Dafür musst Du mit einer SEO-Extension oder Custom Development nachhelfen. Das Gleiche gilt, wenn Du Dich entscheidest, Deine Paginierung zu deindexieren.
Interne Suche in Magento 2
Die interne Suche ist eine wichtige Funktionalität für die Nutzernavigation und gleichzeitig eine interessante Quelle zur Keyword-Recherche. In Magento 2 werden die Ergebnisse der internen Suche auf folgendem URL-Muster abgebildet: magento.com/catalogsearch/result/?q=search+term
Zudem hat der Demo-Shop im Footer einen Link zu einer Übersichtsseite (magento.com/search/term/popular/), auf der beliebte Suchbegriffe mit genau diesem URL-Muster (magento.com/catalogsearch/result/?q=search+term) automatisch verlinkt werden.
Auf diesem Weg kreiert Magento 2 für jede interne Suchanfrage eine eigene, indexierte URL – egal ob dahinter ein relevantes Keyword steckt oder nicht. Selbst wenn Du diese indexierten Such-URLs nicht mehr über eine Sammelseite wie magento.com/search/term/popular/ auf Deiner eigenen Domain verlinkst, können sie durch externe Backlinks weiterhin in den Google Index gelangen.
Deindexiere Deine interne Suche und nutze sie zur Keyword-Recherche!
Die Begriffe, die in der internen Suche eingetippt werden, sind oft ein guter Hinweis, dass Du dafür eine neue Kategorie anlegen kannst. Entscheide gezielt, welche Begriffe Du als neue Seiten in den Kategoriebaum aufnehmen willst. Die durch die Suchfunktionalität automatisch generierten URLs kannst Du dagegen deindexieren und vom Crawling ausschließen.
Unnötige Parameter wie Filter/Sortierung auf Kategorieseiten
Ganz ähnlich solltest Du bei den URLs vorgehen, die durch die vielschichtige Funktionalität der Layered Navigation von Magento 2 generiert werden.
Deindexiere Parameter zur Sortierung/Filterung!
Parameter-Kombinationen zur Sortierung/Filterung von Produkten kannst Du deindexieren und über die robots.txt-Datei vom Crawling ausschließen. Trotzdem können die vorhandenen Filteroptionen ein Startpunkt zur Keyword-Recherche sein und um neue, spezifische Kategorien in Deine Informationsarchitektur zu integrieren.
Die Links der Layered Navigation sind in Magento 2 nicht maskiert und bieten der Suchmaschine damit unzählige Parameter-URL-Kombinationen in href-Links im Quellcode zum Crawlen an.
Ein Beispiel: Auf der URL magento.com/women-products/tops-for-women/ gibt es im Quellcode 91 Links, die mit magento.com/women-products/tops-for-women/? starten. Das folgende Code-Snippet zeigt einen dieser 91 Parameter-Links.
<a href=”http://johanna.magento.com/women-products/tops-for-women/?size=170” rel=”nofollow” aria-label=”XL” class=”swatch-option-link-layered”>
<div class=”swatch-option text ” tabindex=”-1″ data-option-type=”0″
data-option-id=”170″ data-option-label=”XL”
data-option-tooltip-thumb=”” data-option-tooltip-value=””>
XL
</div>
</a>
Dabei fällt auf, dass der Link mit dem „nofollow“-Attribut gekennzeichnet ist. Während Google dies früher als Anweisung verstanden hat, die verlinkte Seiten nicht zu crawlen, wird das Attribut seit 2019 nur noch als Hinweis gewertet (Quelle: Google).
Um dem entgegenzusteuern, gibt es in den Grundeinstellungen von Magento 2 nur die Option, diese Parameter-URLs über einen Canonical-Tag auf die Hauptkategorie vom Index auszuschließen (s. Abschnitt Paginierung).
Zur zusätzlichen Deindexierung über einen Noindex-Tag musst Du aber wieder auf eine Extension zurückgreifen. Was Du dagegen selbst in der Hand hast: das Sperren der unerwünschten URL-Muster über die robots.txt.
robots.txt in Magento 2
Die robots.txt-Datei ist das Werkzeug der Wahl, um die oben genannten URL-Muster vom Crawling durch den Googlebot auszuschließen. Folgende Grundeinstellungen machen für die durch Magento 2 generierten SEO-irrelevanten URLs in der robots.txt Sinn (Quelle: ContentKing).
User-agent: *
Disallow: /catalogsearch/
Disallow: /search/
Disallow: /customer/account/login/
Disallow: /*?SID=
Disallow: /*?PHPSESSID=
Disallow: /*?price=
Disallow: /*&price=
Disallow: /*?color=
Disallow: /*&color=
Disallow: /*?material=
Disallow: /*&material=
Disallow: /*?size=
Disallow: /*&size=
Im Crawl des Demo-Shops sind zudem weitere irrelevante Parameter-URLs aufgefallen. Ein paar Beispiele:
- magento.com/men-products/tops-men/tees-men/?climate=208
- magento.com/men-products/tops-men/?erin_recommends=0
- magento.com/collections/eco-friendly/?pattern=196
Grund hierfür ist, dass Magento 2 alle zur Verfügung stehenden Produktattribute direkt als Filter in die Layered Navigation übernimmt. Hier kannst Du aber manuell nachjustieren und unter Stores > Product für jedes Attribut einzeln entscheiden, ob dadurch ein Filterparameter generiert werden soll (Quelle: Adobe, s. Abbildung 29).
Bei der Einstellung Use in Layered Navigation > No werden durch das Attribut keine Parameter generiert. Falls ein Filter für das Attribut in der Layered Navigation jedoch zur User Experience beiträgt, solltest Du die zusätzlichen Parameter über die robots.txt ausschließen. Du kannst die robots.txt-Datei direkt im Admin-Bereich von Magento 2 anpassen. Gehe dazu auf Content > Configuration > Main Website > Search Engine Robots (s. Abbildung 30).
XML-Sitemap & HTML-Sitemap in Magento 2
Unter Marketing > Site Map kannst Du eine neue XML-Sitemap generieren lassen. Achte darauf, dass der von Dir angegebene Pfad auch in Deiner Ordner-Struktur existiert (s. Abbildung 31).
Du kannst hier zwar verschiedene XML-Sitemaps anlegen (z.B. eine separate Produkt-Sitemap), aber Magento 2 wird mit den Default-Settings für jede Store View nur eine XML-Sitemap für alle Deine Seiten- und Dateitypen (z.B. Bilder) generieren. Für ein Feintuning kannst Du hier wieder eine SEO-Extension einsetzen. Diese ist auch für ein automatisiertes Erstellen von HTML-Sitemaps nötig, da dies nativ nicht angeboten wird.
Unter Stores > Configuration > Catalog > XML Sitemap kannst Du für die Default-Variante einstellen, welche URL-Typen in die XML-Sitemap aufgenommen werden sollen. Zudem kannst Du Werte für Crawl Frequency sowie Priority festlegen, allerdings werden diese von Google ignoriert.
Wie kannst Du mit Magento 2 die interne Verlinkung steuern?
Zu Beginn dieses Abschnittes haben wir es bereits erwähnt: Crawling, Indexierung und die interne Verlinkung gehen Hand in Hand. Im Idealfall sind für Google nur die URL-Muster intern verlinkt, die für die organische Suche relevant sind und eine eigene Suchnachfrage haben. So kann die Linkpower von der Startseite an die relevanten URLs weitergegeben werden. Dazu stellt Dir Magento 2 einige Link-Elemente zur Verfügung.
Navigation, Footer & Sidebar in Magento 2
Die Hauptnavigation Deines Magento 2 Shops passt Du direkt beim Erstellen Deiner Kategoriestruktur mit an. Unter Catalog > Category kannst Du festlegen, ob die Kategorie aktiviert ist und auch, ob sie im Menü mit aufgenommen werden soll (s. Abbildung 32).
Zudem kannst Du unter Stores > Configuration > Catalog > Category Top Navigation einstellen, bis zu welcher Tiefe die Kategorien in die Hauptnavigation eingebunden werden. Je größer Dein Kategoriebaum wird, desto bewusster musst Du hier die Top-Kategorien priorisieren (Quelle: Adobe).
Die Footer-Links sind im Demo-Shop als statischer CMS-Block eingebunden, der dann per Widget am Ende aller Seiten ausgespielt wird. Den Inhalt kannst Du unter Content > Blocks > Footer Links Block anpassen (s. Abbildung 33).
In der Sidebar bindet Magento 2 automatisch Verlinkungen zu Unterkategorien ein sowie, wenn Produkte auf der Seite ausgespielt werden, eine Layered Navigation. Bei Bedarf kannst Du zudem noch statische Links über die Kombination von CMS-Blocks und Widgets hinzufügen. Wie bei den Kategorietexten musst Du hier für jede Kategorie individuell die Sidebar ergänzen.
Wie in Abbildung 34 erkennbar sind die Ergänzungen durch die CMS-Blocks in der Tat statisch und Links müssen nach Updates manuell ausgetauscht werden (s. alte Links mit „.html“-Endungen).
Breadcrumbs in Magento 2
Auf den ersten Blick hat Magento 2 mit den automatisch eingebundenen Breadcrumbs ein sehr praktisches Default-Feature. Basierend auf der festgelegten Kategoriestruktur wird in den entsprechenden Kategorien und Produkten direkt ein Breadcrumb-Pfad eingebunden.
Leider hat das Feature beim Praxistest im Demo-Shop einige Probleme bereitet: So wurde nach den durchgeführten URL-Rewrites weiterhin eine alte URL-Variante im Breadcrumb verlinkt, zum Beispiel die „.html“-Variante der ursprünglichen URL (s. Abbildung 35).
Mit dem passenden Redirect stellt dies für Nutzer:innen kein großes Hindernis dar. Dennoch sollten solche strukturellen Anpassungen in der internen Verlinkung im Idealfall korrekt abgebildet werden.
Möglicherweise taucht dieser Bug auch nur in der Entwicklungsumgebung auf: Nachdem wir im Admin-Panel Kategorien per Drag-and-Drop (s. Abbildung 36) an eine andere Stelle im Kategoriebaum gezogen haben, wurden alle Breadcrumbs mit den richtigen URL-Pfaden ausgespielt.
Auch gut zu wissen: Die Breadcrumbs auf Produkt-URLs werden für jede Session individuell generiert und zeigen den letzten Navigationspfad der Nutzer:innen zum Produkt an. Da Google die URLs aber ohne Historie aufruft, wird auf den Produktseiten wie in Abbildung 37 nur ein abgespeckter Breadcrumb ausgespielt (Quelle: PushON).
Verlinkung von Produkten in Magento 2
Wie bereits weiter oben erwähnt, ist die Paginierung nicht die erste Wahl, um Linkpower an Produktseiten weiterzugeben. Vielmehr sollten alle umsatzrelevanten Produkte auf anderen Wegen prominent intern verlinkt sein.
Ein wichtiger Ansatz dafür ist der gezielte Ausbau von Kategorieseiten, der bei Magento 2 über Catalog > Categories gesteuert werden kann. Produkte lassen sich sehr oft nach ihren Eigenschaften bzw. Attributen klassifizieren und in granulare Kategorien einordnen. Diese Kategorien wiederum sind durch den Kategoriebaum auf höheren Ebenen verlinkt und geben somit viel Linkpower an ihre Top-Produkte weiter. Einen umfassenden Guide zur Validierung und Ausbau Deines Kategoriebaums gibt’s im E-Book von Charlotte Witzke (Quelle: Ryte).
Neben der Kategoriestruktur kannst Du Produkte auch über statische CMS-Blocks und Widgets im Page Builder einbinden. Das kann vor allem für Topseller relevant sein, die Du in individuellen Layouts besonders in Szene setzen möchtest.
Außerdem hast Du die Option, unterhalb jedes Produktes verschiedene Linkmodule mit ähnlichen Produkten auszuspielen (s. Abbildung 38).
Die angezeigten Produkte kannst Du für jede Produkt-URL selbst bestimmen (Catalog > Products > Edit > Related Products, Up-Sells, and Cross-Sells). In der Adobe-Premium-Version ist dies auch regelbasiert für ganze Produktkategorien möglich (Quelle: Adobe). Gut zu wissen: Diese Linkmodule werden mit JavaScript nachgeladen und können von Google erst nach dem Rendering ausgelesen werden.
5) Weitere Überlegungen: Internationalisierung & JavaScript
Die Suchmaschinenoptimierung ist von Natur aus interdisziplinär und an der Schnittstelle zu vielen Fachgebieten angesiedelt (z.B. UX, Development, Content, Warenwirtschaft, Analytics, Paid Media). Eine Betrachtung aller Bereiche aus Sicht von Magento SEO würde jedoch den Rahmen dieses Artikels (noch mehr) sprengen.
Daher möchten wir abschließend noch auf zwei Punkte eingehen, die für SEO oft relevant sind: Internationalisierung und JavaScript.
Internationalisierung in Magento 2
Bisher haben wir einen E-Commerce-Shop im Single Store Mode betrachtet. Unter Stores > Configuration > General siehst Du zudem, dass diesem Demo-Shop eine Region und Sprache zugeordnet sind. Ähnlich kannst Du unter Stores > All Stores auch weitere Stores in verschiedenen Sprachen erstellen. Das Setup sollte hier von einem oder einer Entwickler:in begleitet werden. Dafür ist die Magento Community ein guter Startpunkt, um die nötigen Schritte zu definieren (s. Dev-Ressource 7).
Je nachdem, welche Länder, Sprachen und Regionen für Dich relevant sind, wirst Du gegebenenfalls ein Hreflang-Setup benötigen. Auch diese Funktionalität ist nur über eine entsprechende SEO-Extension in den Shop zu holen.
JavaScript in Magento 2
Der Einsatz von JavaScript ist per se für Google kein Problem, da JavaScript gerendert und die darin vorhandenen Elemente erkannt werden (Quelle: Google). Dennoch ist es zu empfehlen, dass alle Elemente mit direktem Einfluss auf SEO bereits im ungerenderten Quellcode zur Verfügung stehen.
Deaktiviere JavaScript und browse damit durch Deinen Shop!
Mit der Chrome-Extension „Web Developer“ kannst Du JavaScript leicht deaktivieren (Quelle: chrome web store). Browse damit durch Deinen Shop und prüfe, ob alle SEO-relevanten Elemente noch ausgespielt werden bzw. funktionieren:
- Interne Verlinkung
- Title Tag, Meta Description
- Überschriften & Texte
- Index-Tags, Canonicals, Hreflang
Diese Elemente sollten nicht nachträglich durch JavaScript verändert werden. Ist dies dennoch der Fall, solltest Du über das GSC URL Inspection Tool prüfen, ob Google die Informationen in der Tat rendert und korrekt ausliest.
In Magento 2 werden fast alle SEO-relevanten Elemente im Quellcode bereits vor dem JavaScript-Rendering ausgespielt. Nur einige Beschreibungstexte von Produkten sowie die Linkmodule zu „Ähnlichen Produkten“ werden mit JS nachgeladen (s. Abbildung 38). Das ist nicht ideal, vor allem wenn die Linkmodule ein Teil der Strategie zur internen Verlinkung sind. Dennoch sollte Google sie heutzutage zeitnah rendern und danach mit in die Bewertung aufnehmen.
Einen weiteren Einsatz von JavaScript in Magento 2 hatten wir bereits erwähnt: Verschiedene Produktvariationen werden mit JavaScript auf einer einzigen Produktseite ausgespielt. Das ist eine gute Implementierung und verhindert, dass viele unnötige URL-Varianten durch die Produkte generiert werden.
Ein ähnlicher JavaScript-Einsatz wäre bei der Layered Navigation wünschenswert, um die vielen unnötigen Filter-Parameter-URLs zu maskieren, die aktuell per „<a href>“ im Quellcode zum Crawlen erreichbar sind.
Demo-Shop-Setup
Ein kurzer Blick hinter die Kulissen von Magento 2 ist auch ohne eigenen Demo-Shop möglich. Diesen stellen einige Anbieter für Dich bereits frei zugänglich zur Verfügung (Quellen: Magentip oder Mag-tutorials.de). Falls Du aber Lust hast, das Ganze einmal selbst auszutesten, gibt es hier noch einige Tipps, mit welchen Ressourcen das Demo-Shop-Setup bei uns auf Windows 11 geklappt hat.
Der erste Schritt ist die Installation einer passenden Entwicklungsumgebung. Das klappt mit dem Programmpaket XAMPP. Damit wird der Webserver Apache in Kombination mit der Datenbank MySQL sowie der Programmiersprache PHP auf Deinem Gerät installiert (Quelle: Apache Friends). In folgendem Tutorial-Artikel findest Du alle Schritte beschrieben, von der XAMPP-Installation, über die Erstellung Deiner SQL-Datenbank bis zur Installation von Magento 2 (Quelle: TheCoachSMB).
Die einzige Abweichung bei unserem Setup: Wir haben direkt die – zu diesem Zeitpunkt – neueste Version von Magento installiert (2.4.6), da diese mit PHP 8.2 kompatibel ist (Quelle: Adobe). Dazu haben wir im Tutorial bei folgendem Schritt die Versionsnummer „2.4.6“ statt „2.4.2“ verwendet.
composer create-project –repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.6 magento2
Nach dem Setup wirst Du in Deiner lokalen Umgebung vermutlich früher oder später eine Fehlermeldung bekommen, wenn Du Dich in den Admin-Bereich einloggen möchtest (s. Abbildung 39).
Auch hierfür gibt es mehrere Workarounds – bei uns hat Lösung 3 im verlinkten Artikel geklappt (Quelle: TheCoachSMB). Abbildung 40 zeigt den Befehl in der Kommandozeile, der einen neuen Admin-Account angelegt hat.
Zu guter Letzt gibt es noch einige nützliche Befehle für die Kommandozeile (Quelle: mageplaza). Der Befehl in Abbildung 41 hilft Dir zum Beispiel, die Daten im Shop nach Anpassungen neu zu laden bzw. neu zu „indexieren“. Achte beim Ausführen darauf, dass Du Dich im Terminal im richtigen Ordner (hier: C > xampp > htdocs > magento2) befindest.
Im Admin-Bereich wirst Du bei Änderungen zudem häufig aufgefordert, den Cache neu zu laden. Das kannst Du unter System > Cache Management > Flush Magento Cache erledigen.
SEO-Extensions und Entwickler-Ressourcen
In diesem Abschnitt haben wir für Dich Anbieter und Ressourcen gesammelt, die den Default-Shop fit in Sachen SEO machen können.
Bei den (oft kostenpflichtigen) SEO-Extensions lohnt sich zunächst ein Verweis auf die Übersicht von Onely (Quelle: Onely). Hier sind bereits viele Magento 2 SEO-Erweiterungen beschrieben, die Du als Ergänzung in Erwägung ziehen kannst. Folgende Anbieter sind uns während der Recherche zu Magento 2 besonders oft begegnet: Amasty, MageWorx, FMEextensions, Magezon, ScommerceMage, WeltPixel und Wyomind.
Wenn Du eine passende Erweiterung für ein bestimmtes SEO-Thema finden willst, hilft die Suchfunktion des Magento Marketplace: marketplace.magento.com
Entwickler-Ressourcen
Zudem findest Du hier noch einmal alle Entwickler-Ressourcen gesammelt, die im Laufe des Artikels zu bestimmten SEO-Herausforderungen bei Magento 2 verlinkt wurden. Diese können Recherche-Startpunkt für die Umsetzung durch Deine Entwickler:innen sein.
- Dev-Ressource 1: „Add static prefix to the product and category url“
- Dev-Ressource 2: „How can I use an .htaccess file in Nginx?“
- Dev-Ressource 3: „Magento 2 how to add 410 header for 404 pages“
- Dev-Ressource 4: „Override category H1 with custom attribute – Magento 2“
- Dev-Ressource 5: „Magento 2 – How to add extra category description in the product listing page“
- Dev-Ressource 6: „How to set the meta robots NOINDEX tag to header of a specific category page? – Magento Stack Exchange“
- Dev-Ressource 7: „How to Create Multi-Language Store in Magento 2“
Fazit: Magento 2 SEO
Was in vielen Quellen angesprochen wurde, bewahrheitet sich auch in unserem Walkthrough durch den Demo-Shop:
Out of the box wird eine ganzheitliche Suchmaschinenoptimierung mit Magento 2 zur Herausforderung.
Das bedeutet für Dich: Eine durchdachte Vorbereitung zahlt sich aus. Schreibe einen Anforderungskatalog an Deinen Magento-Shop und suche dann zusammen mit Deinen Entwicklern bzw. Entwicklerinnen gezielt nach passenden Erweiterungen oder Code-Lösungen, die alle Deine Kriterien erfüllen können.
Führe zudem nach jeder Anpassung – vor allem mithilfe der nativen Magento 2 Settings – einen kurzen Audit durch und prüfe, ob weiterhin alle SEO-Kriterien erfüllt werden.
Sie sehen gerade einen Platzhalterinhalt von YouTube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen