Neu Automatische Sprachenerkennung abschalten, damit Google deutsche Inhalte indexiert

SebiF

Mitglied
12. Juni 2018
2
0
Hallo,

wir haben vor Kurzem neben Deutsch auch Englisch in unserem Shop aktivieren wollen, mussten es dann aber relativ zügig wieder abschalten. Der Grund: Google fängt dann an, im deutschen Index nur noch englische Inhalte in der Description anzuzeigen. Die Standardsprache im Shop ist Deutsch.
Der Tipp, den man uns gab, war, dass wir Browser Language Redirects abschalten sollen. So soll Google erstmal die deutsche Seite crawlen und auch in den Index aufnehmen, und dann zusätzlich noch auf die englische Seite folgen über den Language Swatch - im englischen Index tauchen diese Seiten dann auch bevorzugt auf.
Nur: wie schalten wir den automatischen Language Redirect im JTL Shop ab? Zur Not könnte man doch, wenn das Sprachcookie nicht gesetzt ist, an der richtigen Stelle das Cookie initial auf Deutsch setzen. Doch wo?

Danke euch.
 

JulianG

Administrator
Mitarbeiter
14. November 2013
1.248
378
Hallo SebiF,

das Matching von der angezeigten Shop-Sprache passend zur Browsersprache des Besuchers lässt sich nicht so einfach deaktivieren und ist denke ich hier auch der falsche Weg. Google sollte über den hreflang Tag in der Lage sein die korrekte Sprache zu erkennen: https://support.google.com/webmasters/answer/189077?hl=de&ref_topic=2370587
Dieser wird standardmäßig seit JTL-Shop Version 4.05 gesetzt: https://issues.jtl-software.de/issues/SHOP-309
In vorherigen Versionen ließe sich das über individuelle Templateanpassung oder Plugins lösen, z.B. https://www.jtl-software.de/jtl-store/erweiterungen/hreflang-tag
 

SebiF

Mitglied
12. Juni 2018
2
0
Hallo,

danke für die Antwort. Bei der eingesetzten Version handelt es sich um Shop Version 4.06 (Build: 4), Templateversion ebenfalls 4.06 (Evo). Trotzdem zeigt Google(.de) nur englischsprachige Suchergebnisse nach aktivieren der englischen Sprache. Es gibt keine Templateanpassungen, die das Standardverhalten des Shops stören würden.

Viele Grüße,
Sebi
 

en001

Sehr aktives Mitglied
15. März 2017
445
43
... und ist denke ich hier auch der falsche Weg. Google sollte über den hreflang Tag in der Lage sein die korrekte Sprache zu erkennen: https://support.google.com/webmasters/answer/189077?hl=de&ref_topic=2370587

Google erkennt Sprache immer über das was von der Webseite gezeigt wird.
Googlebot kommt wie ein Browser und geht nicht davon aus das Spracheinstellungen richtig sind.
Wenn da /de/ im Link ist muss dass ja nicht bedeuten das die Seiten auf deutsch sind.


Google sollte über den hreflang Tag in der Lage sein die korrekte Sprache zu erkennen

Diese Annahme ist falsch und auch nirgendwo bei Google dokumentiert.
Beim Einsatz von hreflang darf es keine GEO-IP oder Spracherkennung durch den Browser geben.

Gruß en001
 
  • Gefällt mir
Reaktionen: JulianG

JulianG

Administrator
Mitarbeiter
14. November 2013
1.248
378
Nach etwas mehr Rechere stimme ich dem zu. Für den Googlebot sind anscheinend nur die sichtbaren Inhalte relevant. hreflang ist eher wichtig für die Verlinkungen von Google aus.
Es scheint auch zu stimmen, dass die automatische Umschaltung der Sprache abhängig von der Browsersprache für Suchmaschinen ungünstig ist. Ich habe dafür ein Ticket für unsere Entwicklung erstellt und mit dieser über Anpassungsmöglichkeiten gesprochen.

Anpassbar ist dies nur über eine direkte Änderung im Code in der Datei /classes/core/class.core.Session.php
Folgende zwei Zeilen:
$cDefaultLanguage = $this->getBrowserLanguage($cAllowed_arr, $cLangDefault);
$cDefaultLanguage = StringHandler::convertISO6392ISO($cDefaultLanguage);

Ersetzen mit folgenden drei Zeilen (oder nur der letzten davon):
//$cDefaultLanguage = $this->getBrowserLanguage($cAllowed_arr, $cLangDefault); SHOP-2505
//$cDefaultLanguage = StringHandler::convertISO6392ISO($cDefaultLanguage); SHOP-2505
$cDefaultLanguage = null;

Das Ticket dazu findet ihr hier: https://issues.jtl-software.de/issues/SHOP-2505
 

dakine

Aktives Mitglied
4. Mai 2020
13
0
Hallo beisammen,
in der neuen Version des Shops gibt es zwar die Datei noch, aber der Inhalt der Datei lautet:

<?php // moved to /includes/src

An dieser Stelle finde ich aber nichts vergleichbares oder keinen Dateiinhalt, der zu den Anpassungen von oben passen würde.
Hat hier jmd schon eine Idee wie die Sprache umgestellt werden kann bzw. die cDefaultLanguage = null gesetzt werden kann?

Besten Dank bereits im Voraus.
DaKine