2014-04-11 30 views
0

我有一個自定義組件生成電子郵件通訊。現在我想用用戶的語言生成html。Joomla得到翻譯 - 自定義

但是我怎樣才能訪問代碼中的用戶語言文件?

使用

$lang->setLanguage($language); 
$lang->load(); 

不工作堅持

感謝

回答

0

包括

protected $autoloadLanguage = true; 

在PHP組件類裏面。並使用語言文件。

+0

嗯在Joomla沒有解決方案? – user2881954

+0

你是什麼意思?它是內置的Joomla引擎,支持多語言。首先,製作語言文件,將它們包含在組件中,然後使用此代碼根據用戶語言啓用語言。 –

1

如果在前端生成的電子郵件,而用戶瀏覽你的網站,你可以得到語言用戶使用:

$lang = JFactory::getLanguage(); 
$langTag = $lang->getTag(); 
echo $langTag; // for example, "en-GB" for English. 

$ langTag可能是不同的,如果你的網站是一個多語種的網站和用戶用另一種語言瀏覽,而不是英語。

當您獲得語言標籤時,您可以使用該語言生成新聞稿併發送。

如果從後端發送簡訊,就可以得到這樣的

$user = JFactory::getUser(USER ID HERE); // $user = JFactory::getUser(123); 
$langTag $user->getParam('language', 'en-GB')); 
echo $langTag; 

用戶用戶的語言可以改變他/她的用戶配置文件的語言,如果用戶使用的默認語言,$ langTag將是空的,所以我們使用'en-GB'作爲後備。

我希望這可以幫助你。