【问题标题】:multi-language support with smarty templatesmarty模板的多语言支持
【发布时间】:2011-01-14 21:18:49
【问题描述】:

在 smarty 模板中支持多语言网站的最佳方式是什么?

我已阅读http://smarty.incutio.com/?page=SmartyMultilanguageSupporthttp://www.smarty.net/docsv2/fr/language.config.variables.tpl,现在我无法决定我将使用哪个选项。

还有其他选择吗?

【问题讨论】:

    标签: php smarty multilingual


    【解决方案1】:

    我使用 $_get['lang'] 来获取要使用的语言。在模板中,对于每个页面,我得到 2 个 if,一个如果 EN,另一个如果 FR,我相应地生成代码。

    页眉页脚和元数据来自数据库,根据语言,将获取语言所需的行。

    【讨论】:

      【解决方案2】:

      我从 cookie 中读取语言并使用 http 请求设置/更改它。根据使用的语言,我只是将字段名称(在 php 中)更改为从数据库中查询(包括页面上的所有字符串 - 它们存储在不同字段中的每种语言 - 我知道这不是很可扩展,但对于这种网站)。此外,我为语言代码设置了一个 smarty 变量,并且在需要时(很少,因为字符串已经本地化),我使用 smarty {if $language ...} 结构来更改输出。

      【讨论】:

        【解决方案3】:

        有人可能会觉得这很有趣。基本上是 lang 变量来获取当前语言并通过 config_load 加载文件。两者基本相同,只是您的第一个链接将所需的所有功能打包到一个小模块中。

        http://www.freesoftwaremagazine.com/articles/creating_multilingual_website_smarty

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2022-01-22
          • 1970-01-01
          • 2010-09-12
          • 2011-11-08
          • 2011-05-26
          • 2011-02-27
          相关资源
          最近更新 更多