Ich hoffe, man kann mir bei diesem Problem helfen, mit dem ich konfrontiert bin.
Situation:
Ich habe 1 Website in 5 Sprachen (zB example.com, example.com/it usw.)
Problem:
Jetzt habe ich example.com/about-us und example.com/it/about-us. Natürlich möchte ich, dass die italienische Version wie folgt lautet: example.com/it/chi-siamo.
Ich habe versucht, den Bezeichner zu übersetzen und ihn in Produktkategorien zu verknüpfen, um beispielsweise "Chi-Siamo" zu sagen. Das Problem ist, wenn Sie versuchen, in eine andere Sprache zu wechseln, wird diese Kennung verwendet.
Zum Beispiel: Ich bin derzeit unter example.com/it/chi-siamo, möchte aber zur deutschen Version wechseln, die example.com/de/ueber-uns sein sollte. Wenn ich mit dem Sprachwechsel von Italienisch auf Deutsch wechsle, erhalte ich: example.com/de/chi-siamo. Welches gibt eine 404 .
Was ist die Lösung?
quelle
Ich gehe davon aus, dass Ihre fünf Sprachen jeweils eine eigene Geschäftsansicht haben. In diesem Fall können Sie dies mithilfe von Katalog> URL-Umschreibungsverwaltung für die Produkte implementieren - jeweils eine für jedes Produkt -
store_id
und dann erweiternMage_Catalog_Model_Product_Url::getUrl
, um nach einer geschäftsspezifischen Umschreibung zu suchen und dieserequest_path
anstelle der Standardeinstellung zu verwenden.quelle
Du solltest es nicht tun.
Es fügt eine weitere Ebene in der URL-Verarbeitung hinzu. Gibt die Möglichkeit von Fehlern und Leistungsengpässen.
Das Wechseln der Sprache wird sehr viel schwieriger, da Sie nicht nur eine Verknüpfung zu einer anderen Sprachkennung herstellen müssen, sondern auch die richtigen URLs für jede Sprache abrufen müssen (für den Fall, dass Sie auf Ihrer Website einen Sprachwechsel haben).
es hat fast keinen Nutzen. Viele Browser verstecken heutzutage sogar die vollständige URL und zeigen nur die Domain oder sogar nur die Kennung auf dem SSL-Zertifikat an.
quelle
Wenn SEO Ihr Hauptanliegen ist, sollten Sie einfach die Attribute rel = "alternative" hreflang = "x" in Ihrem Header verwenden, um den Suchmaschinen (Google) mitzuteilen, dass die angezeigte Seite eine exakte Übersetzung einer anderen Seite ist.
Google beginnt nicht nur mit der Indizierung Ihrer übersetzten Seiten, sondern entfernt auch alle Strafen für doppelte Inhalte für Teile der Seite, die nicht übersetzt wurden.
Der erste Teil ist die Sprache und der zweite Teil ist das Land ("it-it" Italienisch-Italien oder "de-ch" Deutsch-Schweiz), wenn Sie auf diese Weise zielen. Habe auch immer einen Standard eingestellt.
Beispiel für den Kopf:
Das erklärt es ziemlich gut:
https://support.google.com/webmasters/answer/189077?hl=de
https://moz.com/learn/seo/hreflang-tag
quelle