Codeigniter 2.1 switch_uri()和i18n语言库

时间:2012-04-06 19:46:53

标签: codeigniter internationalization

我正在使用Codeigniter 2.1构建我的应用程序,我正在使用i18n多语言库,一切正常。当我翻译当前页面时,唯一的问题就出现了,没关系,但是当我更改页面时,它会以默认语言返回。例如:

  

myapp.com/en/home

     

点击锚点(switch_uri('de'))

     

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>

1 个答案:

答案 0 :(得分:1)

好的,因为我可以看到问题出在您使用base_url()的链接中。在没有base_url()的情况下尝试这样的链接。

<?php echo anchor('about/index/', 'About'); ?>