Mehrere Seiten meiner Website werden in den Suchergebnissen mit [Translate this page]
angezeigt. Wenn ich darauf klicke dass ich zu Google Übersetzer gehe und meine Seite „vom Katalanischen ins Englische“ übersetze.
Die Seiten sind auf Englisch, enthalten jedoch einige Fremdwörter (eigentlich japanische Romanisierungen, nicht Katalanisch), die anscheinend auslösen Google up.
Vor einigen Wochen habe ich das HTML-Tag auf <html lang="en">
gesetzt. Dies scheint aus Recherchen die beste Methode zu sein, um die Sprache eines Dokuments anzugeben. Google hat die Seiten mit diesem Attribut zwischengespeichert, bietet jedoch weiterhin Übersetzungen an.
Weitere Untersuchungen haben mich zu einem Attribut „notranslate“ geführt, das die Übersetzung vollständig verhindert: <html lang="en" class="notranslate">
. Das Problem ist jetzt, dass Benutzer nicht vom Englischen in die gewünschte Sprache übersetzen können!
Gibt es andere Lösungen, die Google dazu zwingen, meine Website nur als Englisch zu analysieren?
Antwort
Google tut nein Verwenden Sie keine Sprach-Metadaten, da wir festgestellt haben, dass diese im Allgemeinen falsch sind. Die Verwendung von HTTP-Headern, HTML-Meta-Tags oder Lang-Attributen auf Elementebene hat keinen Einfluss auf die Spracherkennung von Google. Wenn Sie dies also nicht für andere Zwecke (z. B. Screenreader) tun möchten, können Sie dies wahrscheinlich überspringen.
Beachten Sie, dass Google problemlos mehrere Sprachen pro Seite erkennen kann. Auch wenn wir erkennen sollten, dass ein Teil der Seite auf Italienisch gesprochen wird (möglicherweise, wenn Sie über italienische Hotels schreiben). und wir zeigen einen Link „Diese Seite übersetzen“ in den Suchergebnissen an. Wir werden wahrscheinlich immer noch erkennen können, dass es sich hauptsächlich um Englisch handelt. Eine einfache Möglichkeit, dies zu überprüfen, besteht darin, die erweiterten Suchoptionen zu verwenden, um eine bestimmte auszuwählen Sprache und mache eine Site: -abfrage für deine Site.
Kommentare
- Großartige Einsicht John, danke. Also du ‚ sagen, dass es ‚ keine Möglichkeit gibt, Google daran zu hindern,
[Translate this page]
anzuzeigen? Meine Seiten werden nur in Englisch angezeigt Suche. Mein Hauptanliegen n ist Benutzer – das Anzeigen des Übersetzungslinks impliziert, dass die gesamte Seite in einer anderen Sprache vorliegt. Persönlich neige ich dazu, diese Links zu vermeiden, wenn ich sie sehe. Es gibt auch andere Websites, die dieselben Wörter verwenden, bei denen ‚ den Übersetzungslink nicht erhält … - Diese ‚ ist richtig – im Moment gibt es ‚ keine Möglichkeit, die “ Diese Seite zu übersetzen “ verschwindet von der Seite des Webmasters ‚. Ich ‚ werde Ihr Feedback jedoch an das Team weiterleiten. Vielleicht ist ‚ etwas, das sie für die Zukunft in Betracht ziehen können.
- Danke @John. Das Hauptproblem ist, dass Google glaubt, dass die Seiten auf Katalanisch sind, wenn dies nicht der Fall ist. Ich ‚ bin überrascht, dass Google das Sprach-Tag vollständig ignoriert – warum nicht zumindest als Hinweis verwenden?
- Gibt es ein Update dazu, wie ich gesehen habe Leute hier und da im Internet stellen die gleiche Frage und verursachen in einigen Fällen eine Endlosschleife – superuser.com/questions/326938/…
- Anekdotisch muss ich hinzufügen, dass ich dies persönlich gesehen habe (in Chrome für Windows), wenn ich ‚ in PHPMyAdmin bin Google glaubt, dass die Seite auf Italienisch ist und bietet Übersetzungen an. ‚ kam mir immer bizarr vor, wenn man bedenkt, dass ich ‚ in PHPMyAdmin nie nicht-englische Wörter bemerkt habe.
Antwort
Sie sollten das Meta-Tag
<meta http-equiv="content-language" content="en" />
hinzufügen Sie können den Content-Language-HTTP-Header auch vom Server senden, wenn Sie Zugriff darauf haben.
Weitere Informationen unter http://www.w3.org/International/questions/qa-http-and-lang
Kommentare
- Oder setzen Sie den Header mit Apache: Header set content-language “ de “
- @John, yep. ( das habe ich gemeint, damit er den http-Header vom Server senden kann )
- Hmm, angeblich ist die Verwendung von
<html lang="en">
besser als dieses Meta-Tag, aber ich werde es versuchen und sehen, was passiert 🙂 - Ich ‚ hatte das gleiche Problem und ich ‚ Ich habe überprüft, ob dies in Chrome 19 funktioniert. Dev
-
<html lang=en>
hat es nicht für mich behoben, aber die ‚ Inhaltssprache ‚ Meta-Tag hat.
Antwort
Verwenden Sie dieses Meta, um die Übersetzung von Google zu überspringen.
<meta name="google" content="notranslate" />
Kommentare
- ies wurde tatsächlich zuvor als Antwort eingereicht und dann vom Eigentümer ohne Erklärung gelöscht.@danlefree Gibt es einen Grund, warum dies ‚ nicht gültig ist? wird weiterhin auf einer kürzlich aktualisierten Hilfeseite der Webmaster-Tools angezeigt.
- @Su ‚ : laut google webmaster sollte die google translate übersprungen werden. und seine Funktionen für meine Website.
- @krish ‚ macht das nicht das, was ich in der Frage erwähne, und verhindert jede Übersetzung durch Benutzer?
- Dies könnte totalitär sein. Wenn sich die Sprache des Benutzers ‚ von der Metatag in Inhaltssprache unterscheidet, möchten Sie wahrscheinlich eine Sprachübersetzung.
- Wenn Sie mit der rechten Maustaste auf die Webseite in klicken Chrome, es gibt Ihnen immer noch die Möglichkeit zu übersetzen, auch wenn Sie dieses Meta-Tag haben …
Antwort
Möglicherweise können Sie den Header request Accept-Language
anzeigen, um das Attribut class="notranslate"
dynamisch hinzuzufügen / zu entfernen, wenn die Sprachzeichenfolge en
.
Laut Web Master World können Sie class="notranslate"
nur auf den betroffenen Inhalt (dh die „paar Fremdwörter“) und hoffentlich das Englisch / Englisch-Übersetzungsfeld vermeiden.
Kommentare
- Aber wenn sie vom Englischen in eine andere Sprache übersetzen wollten, würde es von Google abgerufen werden, nicht vom Browser, und vermutlich würde Google “ Engl verwenden ish “ im Header für die Akzeptanzsprache.
- Google verwendet normalerweise Englisch für google.com, google.co.uk usw., aber was ist mit dem Crawler? google.de usw.? Unabhängig davon scheint die selektive Verwendung der Klasse der beste Ausweg zu sein.