我最近開始使用框架(CodeIgniter),並且在大量研究仍然存在許多疑問之後,特別是關於多語種網站。在codeigniter中翻譯多語言網站的路線(url)
我想「翻譯」的網址,比如,我有和fr/home
,但我想對每一種語言了自己的翻譯一樣fr/accueil
,pt/inicio
,等等... 所以到目前爲止所有我的系統正在做的是改變的語言,但是URL(控制器)保持在相同的語言(英語)的 ,fr/home
,pt/home
代替fr/accueil
和pt/inicio
什麼我必須做的做到這一點某種「翻譯」或路由?爲每種語言創建控制器並分別調用它們會更好嗎?我開始這樣做,但在某個時候我意識到這是非常巨大的,可能這不是一個好習慣。但是我發現爲每種語言創建一個控制器要容易得多,但是我不知道在哪個文件中以及在哪個文件中我必須設置「自動運行功能」來檢測/保存語言首選項。
而且當我在URL類型只是語言(例如/en
,/fr
)它沒有「重定向」到主控制器(家):
// '/en', '/de', '/fr' and '/nl' URIs -> use default controller
$route['^(en|fr|pt)$'] = $route['default_controller'];
這不是爲我工作,除非我鍵入「/
」之後的語言: /fr/
正常工作!,/fr
不起作用!
在我的看法中,如果你的控制器與當前選擇的語言不一樣,用戶不會使用'url'瀏覽你的站點,他們將通過你提供的'menu'和'links' 。這是你必須做的。但是如果你真的想要這種功能,你將不得不爲不同的語言添加或調用不同的控制器。 – tomexsans