乔姆拉模板语言


Joomla template language

>我有一个自定义的Joomla模板,我想在其中应用一个模板语言文件。我可以将 en_GB.tpl_my_tpl.ini 放入我网站语言文件夹中的适当位置,一切正常。但是我想把这个文件放到我的模板文件夹中,以便更容易地访问我的语言文件。

我读了人们写的关于这个的文章,在我看来,如果我输入模板/my_template/语言/en_GB/en_GB.tpl_my_tpl.ini它应该可以正常工作,但它没有。据我了解,默认的Joomla模板使用相同的技术。我还向我的模板 xml 添加了以下内容,但仍然没有结果。

<languages folder="language">
        <language tag=”en_GB”>en_GB.tpl_my_tpl.ini</language>
</languages>

我做错了什么,如何克服这个问题?

当调用

JLanguage::load()时,第一个参数是$extension,在模板的情况下是模板名称,例如 tpl_beez_20(其中tpl_在组件助手renderComponent()调用JSitedispatch()方法期间附加到模板name(。

$template名称是通过 $app->getTemplate(true)->template 检索的,该 最初来自模板清单<name>beez_20</name>

因此,由于您的小 XML 代码段看起来不错,这可能是一些事情:

  1. <name> 元素中没有 my_tpl 的值。
  2. 您实际上并没有重新安装模板,只是修改XML,并且由于某种原因,Joomla没有更新清单的缓存副本 - 尝试使用Extension MangerDiscover功能
  3. 您的模板文件夹命名不正确,在您的问题中,您可能/template/my_template您可能只是输入错误,但是,如果您的templateDetails.xml指定my_tpl作为<name>您的路径应该/templates/my_tpl/...(虽然我制作模板已经有几年了,但规则曾经是"name标签必须包含模板要成为的文件夹的确切名称安装在/templates/" 参见 TheArtOfJoomla

更多详细信息,例如templateDetails.xml的关键部分和目录结构列表,也将帮助我们为您提供帮助。

我们对自定义模板执行相同的操作。包含文件夹名称的所有内容看起来都很好。不知道为什么你被告知这是错误的。一切看起来都不错,除了你使用"_"而不是"-"。即...你有:

<languages folder="language">
        <language tag="en_GB">en_GB.tpl_my_tpl.ini</language>
</languages>

这应该是:

<languages folder="language">
        <language tag="en-GB">en-GB.tpl_my_tpl.ini</language>
</languages>

如果您在语言翻译问题上遇到任何问题,只需按照官方 Joomla 文档中描述的调试指南进行操作:http://docs.joomla.org/Making_templates_translatable#Debugging_a_translation