mo、poファイルを用意
Poeditソフトなどを使ってja.poからja.moを生成する。
◆ja.poを作る。
UTF8で。で、中身はこれを書く。
msgid "test"
msgstr "テスト"
◆Poeditでja.poを開き、moに翻訳する。
mo、poファイルをサーバに設置
◆FTPを使って、テーマフォルダの中のlanguagesフォルダにアップする。
/wp-content/themes/[テーマ名]/languages/ja.mo
/wp-content/themes/[テーマ名]/languages/ja.po
翻訳ファイルを読込むように設定
◆functions.php
// 多言語辞書ファイル
load_theme_textdomain( '[テーマ名]', get_template_directory().'/languages' );
多言語にしたい箇所に設定
◆page.phpとか
// 翻訳テキストを表示する
<p><?php _e( 'test','[テーマ名]' ); ?></p>
// HTML エンティティがエンコードされたテキスト
<p><?php esc_attr_e( 'test','[テーマ名]' ); ?></p>
// 翻訳テキストを取得する
<p><?php echo __( 'test','[テーマ名]'); ?></p>
各言語はこちら
日本語 [ja]
英語 (米国) [en_US]
中国語 (中国) [zh_CN]
中国語 (台湾) [zh_TW]
韓国語 [ko_KR]
アラビア語 [ar]
ドイツ語 [de_DE]
イタリア語 [it_IT]
ロシア語 [ru_RU]
言語別画像とかの扱い
日本語、英語辞書にそれぞれこんな風に定義をしておく。
◆ja.po
msgid "lang"
msgstr "-jp"
◆en_US.po
msgid "lang"
msgstr "-en"
◆page.phpとかで試しに表示させてみましょう。
<?php _e( 'lang','multilingual'); ?>
「-jp」とか「-en」と表示されましたか?
◆画像の言語別表示はこんな感じに設定。
<img src="img/gazou<?php _e( 'lang','multilingual'); ?>.jpg" alt="" />
画像は言語別に用意しましょう。
日本語用 : gazou-jp.jpg
英語用 : gazou-en.jpg
参考
◆現在のロケールを取得
<?php $locale = get_locale(); /* 現在のロケールを取得 */ echo $locale; ?>
こちらは、日本語が「jp」、英語が「en_US」と表示されます。