ワードプレスのwp_set_script_translations関数の使用方法・解説

概要

wp_set_script_translations 関数は、JavaScript 向け翻訳ファイル情報を設定するために使用されます。この関数は、テーマやプラグインにおけるローカライズを支援するもので、特にフロントエンドでのスクリプトの翻訳を容易にします。特に、以下のような機能を実装する際によく使われます:

  1. プラグイン内での JavaScript の国際化。
  2. テーマ内での JavaScript の国際化。
  3. 管理画面での JavaScript の翻訳。
  4. フロントエンドでの特定の機能のローカライズ。
  5. AJAX リクエストの結果を翻訳。
  6. JavaScript ライブラリを使用する際の翻訳設定。
  7. 多言語対応の UI コンポーネントを作成する際。
  8. サードパーティ製のスクリプトの翻訳をサポートする際。

構文

wp_set_script_translations( $handle, $domain, $path );

パラメータ

  • $handle (string) – スクリプトのハンドル名。
  • $domain (string) – 翻訳ドメイン名。
  • $path (string) – 翻訳ファイルが格納されているパス。

戻り値

この関数は成功時に真を返し、失敗時には偽を返します。

関連する関数

使用可能なバージョン

この関数は、WordPress 4.6 以降で使用可能です。

コアファイルのパス

wp-includes/script-loader.php

この関数のアクションでの使用可能性

アクション 使用可能性
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

非推奨または削除されたバージョン

この関数は特定のバージョンで非推奨または削除されていません。

サンプルコード

サンプル1: スクリプトの翻訳を設定

function my_enqueue_scripts() {
    wp_enqueue_script( 'my-script', 'path/to/my-script.js', array(), null, true );
    wp_set_script_translations( 'my-script', 'my-domain', 'path/to/languages/' );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts' );

このサンプルは、特定のスクリプトに対して翻訳設定を行っています。国際化対応の JavaScript ファイルを適切に読み込むために必要です。

サンプル2: プラグイン内での翻訳設定

function my_plugin_scripts() {
    wp_enqueue_script( 'my-plugin-script', plugins_url( 'js/my-plugin-script.js', __FILE__ ) );
    wp_set_script_translations( 'my-plugin-script', 'my-plugin-domain', dirname( __FILE__ ) . '/languages' );
}
add_action( 'plugins_loaded', 'my_plugin_scripts' );

このサンプルは、プラグイン内の JavaScript ファイルに翻訳を設定しており、実行時の国際化を実現します。

サンプル3: テーマでの翻訳設定

function my_theme_scripts() {
    wp_enqueue_script( 'my-theme-script', get_template_directory_uri() . '/js/my-theme-script.js' );
    wp_set_script_translations( 'my-theme-script', 'my-theme-domain', get_template_directory() . '/languages' );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

テーマに関連する JavaScript の翻訳を行うサンプルです。テーマのスクリプトが多言語対応になります。

サンプル4: AJAX リクエストの翻訳

function my_ajax_script() {
    wp_enqueue_script( 'my-ajax-script', 'path/to/my-ajax-script.js', array('jquery'), null, true );
    wp_set_script_translations( 'my-ajax-script', 'my-ajax-domain', 'path/to/languages/' );
}
add_action( 'wp_ajax_my_action', 'my_ajax_script' );

この例では、AJAX リクエスト時にスクリプトの翻訳を設定しています。ユーザーインターフェースの応答をローカライズすることができます。

サンプル5: サードパーティ製スクリプトの翻訳

function my_third_party_script() {
    wp_enqueue_script( 'third-party-script', 'https://example.com/path/to/script.js' );
    wp_set_script_translations( 'third-party-script', 'third-party-domain', '/path/to/languages/' );
}
add_action( 'wp_enqueue_scripts', 'my_third_party_script' );

サードパーティ製の JavaScript ライブラリを使用し、その翻訳を設定する例です。外部スクリプトにもローカライズを適用できます。

この関数について質問する


上の計算式の答えを入力してください