我正在用Codeigniter 2.1构建我的应用程序,并且使用i18n多语言库,并且一切正常。当我翻译当前页面时,唯一的问题就出现了,没关系,但当我更改页面时,它会以默认语言返回。例如:Codeigniter 2.1 switch_uri()和i18n语言库
myapp.com/en/home
点击锚(switch_uri( '德'))
myapp.com/de/home
现在跟随链接到另一个控制器和它回来到默认 语言
myapp.com/en/about
那么我该如何修复它,当我切换控制器时,语言保持最后选择的状态,而不是默认的状态?
在此先感谢。 :)
编辑:
这些是我的主页来改变页面语言。我想我可能会使用某种cookie来保存用户的语言,并在下一次控制器负载中得到它,但我确信有更简单和容易的事情。
<ul id="languages">
<li><a href="<?= base_url($this->lang->switch_uri('bg')) ?>" class="lang-bg"></a></li>
<li><a href="<?= base_url($this->lang->switch_uri('en')) ?>" class="lang-en"></a></li>
</ul>
有我的链接,在主菜单中的其他页面:
<li>
<?= anchor(base_url('about'), 'about') ?>
</li>
你可以发布代码,你有链接? – Altrim 2012-04-06 21:31:13
我编辑了我的问题上面。 :) – suricactus 2012-04-07 14:43:35
不,我的意思是控制器的链接。如果你已经正确实施,不应该是他们应该工作的问题,并且语言不应该改变。我询问了链接,看看你是否有硬编码的语言(controller/function/en),如果你在这样的链接中硬编码语言,那么你应该在最后删除语言参数。 – Altrim 2012-04-07 17:25:36