Heim >Backend-Entwicklung >PHP-Tutorial >Gibt es eine Möglichkeit, eine mehrsprachige Website zu erstellen?

Gibt es eine Möglichkeit, eine mehrsprachige Website zu erstellen?

WBOY
WBOYOriginal
2016-12-01 00:57:111208Durchsuche

Ich habe mit Smarty eine Website geschrieben und möchte jetzt eine englische Version hinzufügen. Alle Textübersetzungen werden in JSON gespeichert, ein JSON für die chinesische Version und ein weiteres JSON für die englische Version.

Jetzt stehen wir vor einem Problem:
Die Standardsprache wird basierend auf $_SERVER['HTTP_ACCEPT_LANGUAGE'] ermittelt, aber um sicherzustellen, dass chinesische Benutzer englische Betriebssysteme verwenden (oder umgekehrt), hoffen wir, eine Option zum Erzwingen bereitzustellen Sprachumschaltung. Ich habe COOKIE zuvor verwendet, aber es gab ein Problem. Suchmaschinen konnten nur die chinesische Standardseite sehen und die englische Seite nicht scannen.

Da die chinesische Seite unverändert bleiben würde, wurde die englische Seite in mydomain.com/en/ geändert. Infolgedessen befand sich die TPL-Vorlage in Smarty immer noch im Stammverzeichnis und es gab viele 404-Fehler es wurde darauf verwiesen.

Darüber hinaus unterstützt der Server kein URL-Routing (RewriteRule kann nicht verwendet werden), sodass die Übertragungsmethode für Routing-Parameter nicht funktioniert.

Gemäß den Inhaltsrichtlinien von Google wird die Verwendung von Get zur Übergabe von Parametern nicht empfohlen, daher wird die Verwendung von URL-Get zur Übergabe von Parametern nicht mehr empfohlen.

Das aktuelle Problem besteht darin, dieselbe Website mithilfe von zwei URLs so prägnant wie möglich auszudrücken, wobei nur die Textwiedergabe unterschiedlich ist. URL-Routing kann nicht verwendet werden und Get-Parameter können nicht verwendet werden.

Ich habe über die dritte Methode nachgedacht, nämlich die chinesische Version mydomain.com/zh/ zu erstellen, aber es fühlt sich dumm an und die Domain wird leer sein.

Antwortinhalt:

Ich habe mit Smarty eine Website geschrieben und möchte jetzt eine englische Version hinzufügen. Alle Textübersetzungen werden in JSON gespeichert, ein JSON für die chinesische Version und ein weiteres JSON für die englische Version.

Jetzt stehen wir vor einem Problem:
Die Standardsprache wird basierend auf $_SERVER['HTTP_ACCEPT_LANGUAGE'] ermittelt, aber um sicherzustellen, dass chinesische Benutzer englische Betriebssysteme verwenden (oder umgekehrt), hoffen wir, eine Option zum Erzwingen bereitzustellen Sprachumschaltung. Ich habe COOKIE zuvor verwendet, aber es gab ein Problem. Suchmaschinen konnten nur die chinesische Standardseite sehen und die englische Seite nicht scannen.

Da die chinesische Seite unverändert bleiben würde, wurde die englische Seite in mydomain.com/en/ geändert. Infolgedessen befand sich die TPL-Vorlage in Smarty immer noch im Stammverzeichnis und es gab viele 404-Fehler es wurde darauf verwiesen.

Außerdem unterstützt der Server kein URL-Routing (RewriteRule kann nicht verwendet werden), sodass die Routing-Parameter-Übertragungsmethode nicht funktioniert.

Gemäß den Inhaltsrichtlinien von Google wird die Verwendung von Get zur Übergabe von Parametern nicht empfohlen, daher wird die Verwendung von URL-Get zur Übergabe von Parametern nicht mehr empfohlen.

Das aktuelle Problem besteht darin, dieselbe Website mithilfe von zwei URLs so prägnant wie möglich auszudrücken, wobei nur die Textwiedergabe unterschiedlich ist. URL-Routing kann nicht verwendet werden und Get-Parameter können nicht verwendet werden.

Ich habe über die dritte Methode nachgedacht, nämlich die chinesische Version mydomain.com/zh/ zu erstellen, aber es fühlt sich dumm an und die Domain wird leer sein.

https://www.microsoft.com/zh-cn
Eigentlich halte ich es überhaupt nicht für dumm = =Schließlich nutzen es große Unternehmen.

appleDie englische Seite ist apple.com und die chinesische Seite ist apple.com/cn.

Ich weiß nicht, welches Framework Sie verwenden. Ich denke, Sie können ein filter hinzufügen, um die /en/xxx-Anfrage zu erfassen und das Problem mit der Vorlagenpositionierung zu beheben.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn