假設我有一個數組。關於wordpress中的gettext和i18n函數的一些說明(或關於它的重要的drupal)
$less_user_variables = array(
"bodyBackground" => array(
"value" => "#ffffff",
"description" => __("Body background", AI1EC_PLUGIN_NAME),
"tab" => "general",
"type" => "color",
),
我需要國際說明。所以我把它換成__()
電話。所以當我創建.pot文件時,「Body Background」包含在內。現在,讓我們說,我的數組保存到數據庫,後來檢索
$less_variables = get_option('less_variables');
我可以使用_ ()再次在描述tranlsate呢?我認爲,在運行時的所有_()的作用是其實檢查它獲得的變量的翻譯,爲此
$description = __($less_variables["bodyBackground"]["description"], AI1EC_PLUGIN_NAME);
應該給我「主體背景」的翻譯,對嗎?那__()
不能與變量使用的規則是隻爲創建.pot文件,但在運行時它會與變量一起工作,對嗎? 或者我應該每次使用$ less_user_variables原始數組?
還有一件事,(我認爲)支持我的想法是,
function __($text, $domain = 'default') {
return translate($text, $domain);
}
所以,如果我傳遞一個變量或字符串,實際上沒有什麼變化。我對麼?
是的,你是對的。但是如果網站有能力切換語言,這將會中斷。所以我不能保存描述,但總是使用原來的$ less_user_variables –