私は英語のWordPressパッケージを使っていますが、これは非常にうまくいっています。
さて、私はブログのいくつかの要素(「投稿」、「コメント」など)を翻訳したいのですが、ダッシュボードのインターフェースは英語のままにしておきます。
サイト要素だけを翻訳するためのメカニズムはありますか?
次のことができます。
de_DE.mo
)を入手してください。言語パックがスタンドアロンのダウンロードとして入手できない場合は、あなたの言語用のWordPress Zipファイルにバンドルされている.mo
ファイルも使用できます。 wp-content/languages
の下にあります。.mo
ファイルをあなたのデフォルト(英語)WordPressインストールのwp-content/languages/
に移動してください。wp-config.php
のWPLANG
定数を新しいロケール(例:de_DE
)に変更しますfunctions.php
に以下のフィルタを追加します。functions.php
add_filter('locale', 'wpse27056_setLocale');
function wpse27056_setLocale($locale) {
if ( is_admin() ) {
return 'en_US';
}
return $locale;
}
あなたはそれのためにプラグインを使うことができます: http://wordpress.org/extend/plugins/kau-boys-backend-localization/ または http://wordpress.org/extend/plugins/wp-native-ダッシュボード/
Wordpress 4+用の更新された回答
@ roffloxの答え はまだ正しいのですが、WP 4.0以降、 'そのままの状態で'自分の関数を使用するときに影響を与える可能性があるWordpressへの変更がいくつかあります。
Wp-config定数 WPLANG
は廃止予定となっていますSettings->General
のドロップダウンでサイトの言語を設定するために。つまり、サイトの言語を Svenka に変更すると、サイトのadmin willは英語で表示されますが、Settings->General
のサイトの言語ドロップダウンは事前に選択されますas 英語(アメリカ合衆国) 。つまり、後で全般設定を変更して、サイトの言語として Svenka を選択し忘れると、サイト全体が英語に戻ります。
私はあなたのfunctions.php
ファイルに以下のように関数を作成することをお勧めします。
// Set the locale; original function from @rofflox
function vnmFunctionality_setLocale($locale) {
if (is_admin()) {
return 'en_US';
}
return $locale;
}
add_filter('locale', 'vnmFunctionality_setLocale');
// Enqueue a script to force-set the Language dropdown on the General Options page, just in case we forget about it later.
function vnmFunctionality_countryReminderScript($hook) {
if ($hook != 'options-general.php') {
return;
}
wp_enqueue_script('lang-reminder-script', get_template_directory() . '/js/site-language.js', array('jquery'), '1.0.0', true);
wp_localize_script('lang-reminder-script', 'langObject', array(
'lang' => get_option('WPLANG'),
));
}
add_action('admin_enqueue_scripts', 'vnmFunctionality_countryReminderScript');
そして、site-language.js
というJavascriptファイル(テーマの/js/
フォルダに保存されています)は次のようになります。
jQuery(document).ready(function($) {
$('select#WPLANG').val(langObject.lang).change();
});
毎回手動で行う必要がないように、これにより、[オプション]ページのドロップダウンでサイトの現在の表示言語が自動的に事前選択されるはずです。
まだ誰かがそれを探しているのであれば、これがバージョン4.7以降にすべきことです。
function wp_noshor_redefine_locale($locale) {
if( is_admin() ):
switch_to_locale('en_US');
endif;
}
add_filter('init','wp_noshor_redefine_locale');
これはダッシュボードに英語でロードすることを強制します、そしてあなたは設定に行き、あなたが望む言語を設定することができます。