HCDコンサルティング(旧・中川勉社会保険労務士事務所FPウェブシュフ)のブログ

【WordPressTwentyTwelve】翻訳関数の_e関数と__関数はなるべく除去する方向で

2013-04-08_1413
_e関数と関数は翻訳をつかさどる関数です。開発者にとっては便利なのですが、@web_shufuのような日本人一般ユーザーにとっては、「最初から日本語で書いとけや~」と毒づきたくなる関数です。ですので、テーマをカスタマイズするときは、_e関数と関数をなるべく除去するほうがいい気がします。

_e関数

_e関数は、ワードプレス本体やテーマの国際化ファイルに登録されている英語のフレーズを翻訳して、HTMLのソース上に出力してくれます。

ですから、例えば、

<?php _e( ‘Menu’, ‘twentytwelve’ ); ?>

は、「Menu」を和訳した「メニュー」を、HTMLのソース上に出力します。

__関数

一方、__関数は、ワードプレス本体やテーマの国際化ファイルに登録されている英語のフレーズを翻訳するところまでは、_e関数と同じ働きをします。

しかし、翻訳結果を出力せず、PHPの値として渡すだけです。

ですから、

<?php __( ‘Menu’, ‘twentytwelve’ ); ?>

は、HTMLソース上になにも出力しません。__関数はPHP上でしか働きません。

何でも翻訳できるほど便利ではない

ちなみに、どちらの関数も、あらかじめ登録されている語句を翻訳することしか出来ないことに注意しないといけません。

「Menu」は登録されている語句なので「メニュー」と翻訳されますが、「web_shufu」と入力しても「ウェブシュフ」と翻訳されるわけもありません。

その辺ご注意を!!

_e関数と__関数はなくす方向で

_e関数と__関数をざっくり理解していただくとわかりますが、一般ユーザにとって利用するメリットがほとんどありません。

<?php _e( ‘Menu’, ‘twentytwelve’ ); ?>

なんて、単なる

メニュー

と同じ意味ですよ。

ですので、テーマをカスタマイズする際には、_e関数と__関数を見つけ次第なるべく排除する方向で動くことをオススメします。


投稿日

カテゴリー:

投稿者:

 最終更新日:

タグ: