2011-08-13 9 views
0

私は内部化i18n ciを使用します。内部化i18nコード名2

翻訳は正常ですが、ホームページでは常にナビゲータのデフォルト言語が保持されます。

例えば、私はそれは大丈夫ですが、私はホームリンクをクリックした場合、私のスペイン語の翻訳は英語に置き換えられます(スペイン語など)変換するためのリンクをクリック

してください(Firefoxはデフォルトでは英語です)私たちを手伝ってくれますか?


おかげSukunar、 私は、内在化i18ciを使用する場合、それは自動的にサブドメインにリダイレクトされます。 英語のような英語の既定の言語を使用しているFirefox「http:// localhost:8888/mysite/en/home」 フランス語の翻訳を選択すると「http:/localhost:8888/mysite/fr/home " リンクをクリックすると言語が保存されます。 例:購読ページへのリンクは、「http:// localhost:8888/mysite/fr/translate」 リンクを使用してホームページに戻ると、ブラウザのデフォルト言語になります。選択した言語が消えます。

この私のファイル:アプリケーション/設定/ルート:

$route['default_controller'] = "site"; 
$route['404_override'] = ''; 
//URI like '/en/about' -> use controller 'about' 
$route['^(en|fr)/(.+)$'] = "$2"; 
$route['^(en|fr)$'] = $route['default_controller']; 

が、私は別のファイルに何かを変更できますか?この場合、どのように、そして何ですか?

答えて

0

セッションを使用してユーザーの言語を保存する必要があります。ページを読み込む前に、セッションからユーザーの言語を取得し、関連するコンテンツを表示します。

また、言語ごとに異なるURL構造またはサブドメインを使用することもできます。この場合、すべてのリンクに言語の変更が反映されていることを確認する必要があります。これは、ウェブクローラがこのデータにアクセスできるようになるため、SEOの観点からも推奨されます。例えば

site.com - 英語

のデフォルト、

es.site.com - スペイン語 site.com/es

における言語固有のは、それが役に立てば幸い!