问:我有一个多语言站点,通过检查基本url自动切换语言,假设www.myapp.fr(对于法语)和www.myapp.es我使用一个helper函数来相应地执行$this->config->set_item('base_url', $domain)
。我的问题是,我应该将helper函数放置在哪里,最好的作用域,这样用户就不会被困在看到法语站点的陷阱中,使用错误的url www.domain.es?MY_Controller构造函数?
(*)通常人们有一个多语言网站的域名。在我的情况下,我有相同的主机与两个域名指向它。根据用户请求的URI,我做切换!
我正在重新编写一个网站,它可以做到这一点,并且运行良好。但我记得有一些问题,因为base_url没有正确切换,用户在ES域中使用FR语言导航(示例)。在那段时间里,我没有在每个控制器上都有一个助手,没有DRY良好的实践,所以我猜这就是问题所在。但90%的情况下,它运行良好!
1条答案
按热度按时间alen0pnh1#
不要自己设置base_url。
从CI 2.0开始,您不需要设置base_url。
您可以使用此代码设置base_url
现在,你可以从base_url中解放出来了。你可以有一个钩子来根据域名来决定使用什么语言。