wpml_switch_language_for_email
- タイプ
- action
- カテゴリー
- コンテンツの言語情報の取得
- WPMLバージョン
- 3.2.0
説明
このアクションフックは、メールの言語をユーザーの優先言語に切り替えます。これは、異なる言語でメールを送信する必要がある場合に役立ちます。wpml_restore_language_from_emailを使用して、必ず言語を元に戻してください。また、詳細なドキュメントWPMLを使用したメール送信も参照してください。
指定されたメールアドレスが登録されていない場合、何も起こりません。
これらの切り替えはネストされます。WPML 5.0以降、このアクションを呼び出すたびに言語スコープが開き、wpml_restore_language_from_emailを呼び出すたびに、まだ開いている最後のスコープが閉じられます。切り替えごとに1回復元を呼び出してください。コードが例外をスローした場合にも実行されるように、finallyブロック内に配置してください。スコープを開いたままにすると、リクエストの残りの部分は受信者の言語で実行されます。
引数
$email (文字列) ユーザーのメールアドレス。
使用例
例
すべてのユーザーにそれぞれの言語でメールを送信します。
$all_users = get_users();
foreach( $all_users as $user ) {
// Switch language to user language.
do_action('wpml_switch_language_for_email', $user->user_email );
$subject = __('Hello, World!', 'text-domain');
$message = __('This is our newsletter', 'text-domain');
wp_mail( $user->user_email, $subject, $message);
// Switch language back.
do_action('wpml_restore_language_from_email');
}
関連するフック
wpml_post_language_details, wpml_restore_language_from_email, wpml_switch_language, wpml_element_language_code, wpml_element_language_details