load_theme_textdomain()


WordPressのload_theme_textdomain()関数は、テーマで使用される翻訳テキストドメインをロードするために使用されます。これにより、テーマ内で国際化(i18n)とローカリゼーション(l10n)が可能になります。

構文

load_theme_textdomain( string $domain, string $path = '' );

引数の説明

  • $domain (string) — テーマのテキストドメイン名を指定します。
  • $path (string, 任意) — テキストドメインが含まれるファイルのディレクトリパスを指定します。

注意点

  • $domainは、テーマ内でユニークな名前を使用する必要があります。
  • デフォルトの$pathはテーマのlanguagesディレクトリです。

例1. テーマのテキストドメインをロードする

このコードは、テーマの翻訳をロードします。

<?php load_theme_textdomain( 'my_theme', get_template_directory() . '/languages' ); ?>

例2. 子テーマでテキストドメインを設定する

子テーマで親テーマの翻訳を利用するための設定例です。

<?php load_theme_textdomain( 'my_child_theme', get_stylesheet_directory() . '/languages' ); ?>

例3. テーマの翻訳ファイルが既定ディレクトリにある場合

$pathを省略してlanguagesディレクトリを使用する例です。

<?php load_theme_textdomain( 'my_theme' ); ?>

例4. 動的にパスを設定する

条件によって異なるパスから翻訳ファイルをロードします。

<?php
if ( is_child_theme() ) {
    load_theme_textdomain( 'my_child_theme', get_stylesheet_directory() . '/languages' );
} else {
    load_theme_textdomain( 'my_theme', get_template_directory() . '/languages' );
}
?>

例5. プラグインとの連携

プラグインが提供する翻訳と併用するための例です。

<?php
load_theme_textdomain( 'my_theme', get_template_directory() . '/languages' );
load_plugin_textdomain( 'my_plugin', false, 'my-plugin/languages' );
?>

注意事項

  • テーマのfunctions.phpファイル内でload_theme_textdomain()を呼び出してください。
  • 翻訳ファイルは正しいフォーマット(例:ja.mo)で保存する必要があります。

関連機能: