我有一個自定義組件生成電子郵件通訊。現在我想用用戶的語言生成html。Joomla得到翻譯 - 自定義
但是我怎樣才能訪問代碼中的用戶語言文件?
使用
$lang->setLanguage($language);
$lang->load();
不工作堅持
感謝
我有一個自定義組件生成電子郵件通訊。現在我想用用戶的語言生成html。Joomla得到翻譯 - 自定義
但是我怎樣才能訪問代碼中的用戶語言文件?
使用
$lang->setLanguage($language);
$lang->load();
不工作堅持
感謝
包括
protected $autoloadLanguage = true;
在PHP組件類裏面。並使用語言文件。
如果在前端生成的電子郵件,而用戶瀏覽你的網站,你可以得到語言用戶使用:
$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'作爲後備。
我希望這可以幫助你。
嗯在Joomla沒有解決方案? – user2881954
你是什麼意思?它是內置的Joomla引擎,支持多語言。首先,製作語言文件,將它們包含在組件中,然後使用此代碼根據用戶語言啓用語言。 –