Hallo,
mein Kunde hat eine zweisprachige Contenido-Installation (deutsch und englisch) und möchte nun gerne je nach Browsersprache einen automatisierten Aufruf:
deutscher Browser: deutsch
nicht-deutscher Browser: englisch
Läßt Sich so was umsetzten, im Forum fand ich nur http://forum.contenido.org/viewtopic.ph ... GE#p106230, leider wird dort die Frage nicht beantwortet.
Vielen Dank aus Bremen,
Horst
Automatische Sprachauswahl (über Browsersprache)
Automatische Sprachauswahl (über Browsersprache)
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de
Re: Automatische Sprachauswahl (über Browsersprache)
Hallo Horst,
da steht aber im nächsten Beitrag, dass es u.U. geht, wenn die .htaccess im ANSI-Format gespeichert ist, also sollten die Angaben korrekt sein (natürlich Domain und Sprachangabe in den URLs anpassen).
Gruß
René
da steht aber im nächsten Beitrag, dass es u.U. geht, wenn die .htaccess im ANSI-Format gespeichert ist, also sollten die Angaben korrekt sein (natürlich Domain und Sprachangabe in den URLs anpassen).
Gruß
René
Re: Automatische Sprachauswahl (über Browsersprache)
Hallo René,
ja peinlich, lesen müsste man können ...
Danke für deine schnelle Antwort, ich habs ausprobiert in der Art:
Fehler: Umleitungsfehler
Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.
auch wenn ich stattdessen
http://www.domain.com/1/startseite.html [L,R]
oder
http://www.domain.com/1/startseite.html/ [L,R]
schreibe bleibt das Ergebnis gleich.
Ich verwende con 4.8.15 mit mod_rewrite.
Grüße aus Bremen,
Horst
ja peinlich, lesen müsste man können ...
Danke für deine schnelle Antwort, ich habs ausprobiert in der Art:
erhielt aber immer nur#falls sprache deutsch:
RewriteCond %{HTTP:Accept-Language} ^.*de.*$ [NC]
RewriteRule .* http://www.domain.com/1/ [L,R]
#ansonsten:
RewriteCond %{HTTP:Accept-Language} !^.*de.*$ [NC]
RewriteRule .* http://www.domain.com//2/ [L,R]
Fehler: Umleitungsfehler
Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.
auch wenn ich stattdessen
http://www.domain.com/1/startseite.html [L,R]
oder
http://www.domain.com/1/startseite.html/ [L,R]
schreibe bleibt das Ergebnis gleich.
Ich verwende con 4.8.15 mit mod_rewrite.
Grüße aus Bremen,
Horst
Webdesign | Contenido: Templateprogrammierung, Einrichtung und Verwaltung | http://www.w2media.de
-
- Beiträge: 3215
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 17 Mal
- Kontaktdaten:
Re: Automatische Sprachauswahl (über Browsersprache)
Hallo Horst1234,
das Problem bei dir ist, dass jede Anfrage umgeleitet wird, auch die umgeleitete Anfrage, ist also eine Endlosschleife an Umleitungen.
Die Verwendung der Regel kann unter umständen auch kontraproduktiv sein, weil Einträge wie "en-US,en,de-DE" in der HTTP-Header Accept-Language immer auf die deutsche Seite gehen würde, obwohl hier der User als erste Preferenz amerikanisches Englisch angegeben hat. Außerdem möchte der User vielleicht die Sprache wechseln, d. h. wenn mal eine Sprache gewählt wurde, sollte man dem User immer die Seite mit der präferierten Sprache zeigen. Das würde auch nicht mit den jetzigen Regeln in der .htaccess gehen. Solche komplizierten Bedingungen kann man schwer in der.httaccess lösen, ich würde vorschlagen, du machts das Serverseitig.
Dort kann man HTTP-Header Accept-Language besser analysieren und darauf reagieren.
Gruß
xmurrix
das Problem bei dir ist, dass jede Anfrage umgeleitet wird, auch die umgeleitete Anfrage, ist also eine Endlosschleife an Umleitungen.
Die Verwendung der Regel kann unter umständen auch kontraproduktiv sein, weil Einträge wie "en-US,en,de-DE" in der HTTP-Header Accept-Language immer auf die deutsche Seite gehen würde, obwohl hier der User als erste Preferenz amerikanisches Englisch angegeben hat. Außerdem möchte der User vielleicht die Sprache wechseln, d. h. wenn mal eine Sprache gewählt wurde, sollte man dem User immer die Seite mit der präferierten Sprache zeigen. Das würde auch nicht mit den jetzigen Regeln in der .htaccess gehen. Solche komplizierten Bedingungen kann man schwer in der.httaccess lösen, ich würde vorschlagen, du machts das Serverseitig.
Dort kann man HTTP-Header Accept-Language besser analysieren und darauf reagieren.
Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
Re: Automatische Sprachauswahl (über Browsersprache)
Hmmm, das hier scheint zu funktionieren:(laut Anleitung von http://www.tudas.de/blog/uncategorized/ ... t-htaccess)
Gruß
René
Code: Alles auswählen
# Falls Sprache deutsch:
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{HTTP:Accept-Language} ^de [NC]
RewriteRule ^$ /de [L,R]
# Falls andere Sprache:
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{HTTP:Accept-Language} !^de [NC]
RewriteRule ^$ /en [L,R]
Gruß
René
-
- Beiträge: 3215
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 17 Mal
- Kontaktdaten:
Re: Automatische Sprachauswahl (über Browsersprache)
Ja, das sieht gut aus.
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
Re: Automatische Sprachauswahl (über Browsersprache)
Generell funktioniert es auch noch mit dem Auslesen von $_SERVER['HTTP_ACCEPT_LANGUAGE'] und dem verarbeiten des ausgelesenen Werts. Man kann dann z.b. sagen, wenn "de" und noch keine Sprache gsetzt dann auf Sprache DE umschalten. Wenn manuell eine Sprache gewählt oder wenn man über einen Deeplink von den Suchmaschinen kommt dann mache nichts.
Außerdem kann man weitere Kriterien dazu nehmen wie evtl. eine IP-Adressweiche.
Wir haben solche Weichen sowohl für contenido-Webseiten als auch für Shopsysteme schon programmiert. Bei einem Shopsystem kann man z.b. noch weitere Parameter damit steuern wie z.B. die Währung etc.
Ist ein interessantes Thema und wollte ich nur noch ergänzen dass man es nicht nur über die .htaccess machen kann.
Viele Grüße
Walter
Außerdem kann man weitere Kriterien dazu nehmen wie evtl. eine IP-Adressweiche.
Wir haben solche Weichen sowohl für contenido-Webseiten als auch für Shopsysteme schon programmiert. Bei einem Shopsystem kann man z.b. noch weitere Parameter damit steuern wie z.B. die Währung etc.
Ist ein interessantes Thema und wollte ich nur noch ergänzen dass man es nicht nur über die .htaccess machen kann.
Viele Grüße
Walter
https://www.lenk.gmbh
Seit über 15 Jahren Erfahrung mit contenido
Umgesetzte Projekte mit contenido: über 300
Größtes Projekt: >2500 Einzelseiten
Seit über 15 Jahren Erfahrung mit contenido
Umgesetzte Projekte mit contenido: über 300
Größtes Projekt: >2500 Einzelseiten