0

我有布局(主)页面,其中有部分 div、页眉、内容、页脚......

在我的标题 div 中,我有国旗。我正在尝试实施解决方案,当单击国家/地区标志时,用户将从任何位置重定向到带有国家/地区前缀的同一页面。

我正在使用位置,http://jeromejaglale.com/doc/php/codeigniter_i18n并且我有类似的页面

/en/Company//fr/Company/

现在,当用户例如冲浪/en/Company/History并单击要重定向到的法国国旗时/fr/Company/History

考虑到这些标志位于布局视图下,因此我无法将这些标志与(公司/历史)视图本身的语言链接链接起来。

我应该获取 url 值并解析该 url 并将语言前缀替换为另一种语言前缀还是有更好的方法。

4

2 回答 2

2

你说你用i18n codeigniter library.

您可以将切换语言逻辑放在控制器内(默认或您想要切换语言的那个)切换选定的语言值。可以使用检索此值

$this->lang->lang();

这将返回 en 或您使用的其他语言

并且从那里很容易,反转这些值并放入例如,然后进一步配置查看页面以使用该值$data['switchLang'] = 'en';作为'fr'

<?php echo anchor($this->lang->switch_uri($switchLang), 'Switch language'); ?>
于 2013-05-21T09:07:35.367 回答
0

好吧,我要做的是解析 url,然后添加值,因为你总是在同一个地方有语言变量。对我来说,这是唯一的方法。

另一个问题是如何将数据发送到视图?我认为您可以在调用 this->load->view() 时将数据从控制器显示到布局中,了解如何,因为这取决于您发送数据的方式,也许如果您粘贴部分控制器代码,我可以指出你怎么做。

无论如何,你总是必须在你的语言标志中写下你想去的 url,根据你使用的语言,通过解析来改变 url 语言部分的值。

于 2013-05-21T09:50:01.910 回答