我正在寻找一种基于页面当前语言显示特定模板文件的快速方法。
假设我有两种语言:英语和法语(英语是默认语言)
我有各种模板文件,例如:我的主题目录中的page.tpl.php page-node-11.tpl.php。
我想找到一种基于当前语言包含这些文件的方法;例如,如果当前语言是'english',它将包含'page.tpl.php',如果当前语言是'french',它将包含'fr / page.tpl.php'。
我确信这很直接,但无法弄清楚如何;在template.php?
感谢您的帮助。
答案 0 :(得分:2)
假设您使用的是Internationalization module,而不是更改每种语言的模板,您可能需要考虑利用CSS class set on the body tag。我之前在网站上使用过这种技术,它比处理另一个模板文件更容易。如果你不使用i18n模块,你仍然可以在preprocess_page函数中添加body类。
如果body类不适合您,您可以从上面的问题中查看the patch,以获取在预处理期间如何将语言添加到变量数组的示例。然后,请参阅Working with template suggestions handbook page,了解如何根据新添加的语言信息添加模板建议。