2017-06-19 34 views
-2

我有以下問題。我想用不同的語言翻譯我的網站。可以說我想用英語和德語翻譯我的網頁。ZF3 translate complete html

我知道如何使用translate ViewHelper翻譯文檔的單個部分。 我知道如何通過使用translatesprintf來個性化鏈接(等)。

但是我怎樣才能翻譯整個HTML?我有一個英文結構與德語結構完全不同的網站?我試圖將html外包到翻譯文件(phparray)中,但不能識別諸如url的ViewHelpers。

任何想法如何讓它工作?

回答

1

如果HTML結構完全不同,則應爲每種語言的每個viewModel加載一個不同的模板。所以在你的控制器中:

if ($language == 'DE') { 
    $viewModel->setTemplate('template/de/index.phtml'); 
} else { 
    $viewModel->setTemplate('template/en/index.phtml'); 
} 

你不應該在翻譯文件中使用HTML。只要堅持你的翻譯字符串。既然你已經知道HTML結構,這不應該是一個設置困難的事情。