2011-08-10 5 views
1

モジュールを作成しました。議論のために、すべてが機能し、t('this is the english version')関数を使用した場所がいくつかあります。Drupalのロードは、新しくインストールされたカスタムブロックから文字列をローカライズ/変換する方法を教えてください。

t('foo')機能は、mymodule.moduleファイルとmymodule.tpl.phpファイルの両方に表示されます。

Internationalization (enabled), 
String translation (enabled), 
Block languages (enabled), 
Contact translation (disabled), 
Field translation (enabled), 
Translation sets (enabled), 
Taxonomy translation (enabled), 
Content translation (enabled), 
Multilingual content (enabled), 
Multilingual forum (disabled), 
Menu translation (enabled), 
Path translation (disabled), 
Translation redirect (disabled), 
Multilingual select (enabled), 
Synchronize translations (enabled), 
Variable translation (disabled), 
Translation table (enabled) 

(申し訳ありませんが、それは巨大なリストだが、私はしたくない:私のDrupalのサーバー構成では

は、私がLOCALEとそれらが必要しているように見える他のモジュールの束をロードしています何かを残してください)

私は翻訳インターフェースをロードして、そのブロックの下の文字列を探しました "翻訳テーブル" & "翻訳インターフェイス"を翻訳しますが、そこにはありません。

私は文字列メニューから文字列を再読み込みしようとしました。 私は無効にして、ブロック自体を再有効化しようとしました...私は(私はDrupalの設定の下のTITLEオプションを持っている場合)、「保存して翻訳し、」ブロック構成をロードし、選択した

私は何が欠けていますか?
ブロックに追加の変数を追加する必要がありますmymodule_block_info() mymodule_block_install()関数を作成する必要はありますか?

誰でも?

答えて

3

Drupalは最適化の理由から「ジャストインタイム」翻訳を使用します。

Drupalで文字列翻訳をロードするには、通常、ターゲット言語の文字列を含むページにアクセスする必要があります。つまり、ブロックがあなたの「連絡先」ページにあり、中国語の場合はhttp://mysite.com/zh-hans/node/blah-blahを使用して連絡先ページにアクセスしてください。

翻訳されていない文字列のページを少しクリックしてから、翻訳された文字列ページをもう一度見てください。

関連する問題