我有问题。基本上,根据用户是否访问我们网站上的/ es或/ br或/ cn等,我们有不同的语言模板文件。到目前为止,我们使用自定义模板引擎来完成这项工作,但正在切换到ZF。如果语言varuable是cn,我似乎无法弄清楚如何让ZF在cn / about-us中查找视图脚本。
我不能(不想)使用Zend_Translate,因为我们有太多翻译的模板文件,并且使用Zend_Translate对于多段中文/韩文/日文的多个不同文件是不可行的,遗忘我不会说那些语言。
有人能帮助我吗?
答案 0 :(得分:2)
您可以编写控制器插件并使用它的routeStartup()方法来更改Zend_View设置(视图脚本所在的路径),并在路由开始之前更改请求uri。
class My_Controller_Plugin_LanguageSwitcher extends Zend_Controller_Plugin_Abstract
{
public function routeStartup(Zend_Controller_Request_Abstract $request)
{
// examine the $_SERVER['REQUEST_URI'] and look for your language identifier
// fetch the View and set appropriate view scripts path using setScriptPath() method
// strip the language identifier from your REQUEST_URI
// change the request uri using $request->setRequestUri('your-new-uri-without-the-language- identifier');
}
}