Bots und Content Negotiation
hotti
- sonstiges
hi,
s. Thema, meine Frage geht speziell in Richtung 'HTTP_ACCEPT_LANGUAGE', senden die Bots einen solchen Requestheader?
(und finden somit evntl. weitere Seiten zum indizieren)
Ansonsten wäre meine nächste Frage, wie ich den Bots anderweitig mitteilen kann, ob aufgrund dieser Content-Negotiation eine mehrsprachige Seite gegeben ist.
Hotti
@@hotti:
nuqneH
s. Thema, meine Frage geht speziell in Richtung 'HTTP_ACCEPT_LANGUAGE', senden die Bots einen solchen Requestheader?
Verallgemeinere! Bots → Clients
Dann stellt sich dir Frage so: Was bekommen Nutzer zu sehen, wenn kein Accept-Language im HTTP-Header ist? Nichts? (Lustige 404er Seite zählt hier auch unter Nichts.)
In dem Fall sollte der Inhalt natürlich auch angezeigt werden – in der Defaultsprache. (Welche das ist, hängt von der Ausrichtung der Website ab.)
Und schon kommen auch Bots auf die Website.
(und finden somit evntl. weitere Seiten zum indizieren)
Da ein Sprachauswahlmenü auch immer vorhanden sein muss, finden Bots auch die anderen Sprachvarianten.
Wenn also für menschlich Nutzer alles richtig gemacht wird, sollten Bots auch zufrieden sein.
Qapla'
hi,
Da ein Sprachauswahlmenü auch immer vorhanden sein muss,
Ist das eine Empfehlung von w3org?
finden Bots auch die anderen Sprachvarianten.
Sonst nicht?
Hotti
@@hotti:
nuqneH
Da ein Sprachauswahlmenü auch immer vorhanden sein muss,
Ist das eine Empfehlung von w3org?
Wenn du mit „Empfehlung“ eine Spec meint, vielleicht nicht.
Wenn du mit „von w3org“ auch diesen Artikel einschließt (den du inzwischen nicht nur einmal gelesen haben solltest), dann ja.
finden Bots auch die anderen Sprachvarianten.
Sonst nicht?
Wie sollten sie?
Qapla'
hi Gunnar,
war doch klar, dass Du da was hast ;)
Wenn du mit „von w3org“ auch diesen Artikel einschließt (den du inzwischen nicht nur einmal gelesen haben solltest), dann ja.
Ja, der Artikel ist gut, kenne ich schon länger, heute habe ich mal Zeit gehabt, das umzusetzen Content-Negotiation UND Manuelle Auswahl.
Es ist so, dass beim Einsatz der Language-Negotiation ein URL mit mehreren Sprachen belegt sein kann, so kann es logischerweise gar keine Links zu "diese Seite in einer anderen Sprache" geben.
Um eine manuell Auswahl trotzdem zu ermöglichen, bleibt da nur noch der Weg über einen Cookie. Meine Lösung ist optisch noch nicht ganz so schön, jedoch funktional...
Viele Grüße,
Hotti
@@hotti:
nuqneH
heute habe ich mal Zeit gehabt, das umzusetzen Content-Negotiation UND Manuelle Auswahl.
Die würde ich aber oben positionieren, nicht unten. Und die Sprachkürzel als Beschriftung sind auch nur bei speziellem Zielpublikum tauglich. Besser ausschreiben, in Zielspache: deutsch, English, français.
Es ist so, dass beim Einsatz der Language-Negotiation ein URL mit mehreren Sprachen belegt sein kann, so kann es logischerweise gar keine Links zu "diese Seite in einer anderen Sprache" geben.
?? Auf der deutschsprachigen Seite hast du doch die Links http://handwerkzeugs.de/choicelang.html?url=/kontakt.html;lang=en und http://handwerkzeugs.de/choicelang.html?url=/kontakt.html;lang=fr.
„Impressum“ heißt auf englisch NICHT „Imprint“. Von Französisch hab ich keine Ahnung, vermute aber Entsprechendes.
Qapla'
danke Gunnar!
?? Auf der deutschsprachigen Seite hast du doch die Links http://handwerkzeugs.de/choicelang.html?url=/kontakt.html;lang=en und http://handwerkzeugs.de/choicelang.html?url=/kontakt.html;lang=fr.
Das sind Links zu einem von den jeweiligen Seiten unabhängigen URL, der macht folgendes:
Die Ursprungsseite hat somit auf einunddemselben Locator unterschiedliche Inhalte, je nach Language-Negotiaton oder Cookie.
Und da haben wir wieder das Problem ;)
Es sind also keine Links zu 'diese Seite in einer anderen Sprache'.
Für einen cookiefreundlichen Besucher nutzbar, für Bots vermutlich nutzlos.
Wie auch immer: Es gibt sie, die Content/Language Negotiation (CN). Und ich werde die nutzen, wenn es um Mehrsprachigkeit geht. Der programmiertechnische Aufwand für CN ist geringer als der Aufwand, für jede Sprache einen eigenen Locator zu schaffen, denn das würde bedeuten, die gesamte Navigation mehrsprachig zu pflegen, grausige Vorstellung ;)
„Impressum“ heißt auf englisch NICHT „Imprint“. Von Französisch hab ich keine Ahnung, vermute aber Entsprechendes.
Ja, danke!!!
Hotti
@@hotti:
nuqneH
Das sind Links zu einem von den jeweiligen Seiten unabhängigen URL, der macht folgendes:
- Cookie für die Spraches setzen
- auf die Ursprungsseite zurückleiten
Da liegt das Problem. Du solltest Cookies nicht zur Voraussetzung für die Sprachumschaltung machen. Dafür gibt es sprachbezifische URIs.
Damit geht’s dann auch bei Clients (d.h. bei Nutzern und Bots), die keine Cookies akzeptieren wollen oder können.
Cookies dienen dazu, dass sich das System eine getätigte Sprachumschaltung merkt, der Nutzer also nicht ständig umschalten muss, wenn content negotiation nicht die richtige Sprache liefert.
Sieh dir an, wie’s auf der W3C-i18n-Website gemacht ist.
Qapla'
hi Gunnar,
heute habe ich mal Zeit gehabt, das umzusetzen Content-Negotiation UND Manuelle Auswahl.
Die würde ich aber oben positionieren, nicht unten. Und die Sprachkürzel als Beschriftung sind auch nur bei speziellem Zielpublikum tauglich. Besser ausschreiben, in Zielspache: deutsch, English, français.
Du hast mich DAMIT heute abend ganz schön ins Schwitzen gebracht ;)
Habe Fertisch!!!11!!
Diese Lösung mit dem Cookie named LANG habe ich jetzt oben ins Hauptmenu verfrachtet und das sieht soweit ganz ordentlich aus.
(das Ganze ist nun auch in mein Framework abwärtskompatibel integriert und steht für die nächsten Projekte zur Verfügung)
Viele Grüße!
Hotti