WPML

問題の概要

WPMLをWP Mail SMTP (新しいタブで開く)と併用する場合、メールのFrom Nameを翻訳できません。セカンダリ言語のメールは、デフォルト言語のFrom Nameで送信されます。

回避策

先に進む前に、必ずサイトの完全なバックアップを取得してください。

  • WP Mail SMTP設定に移動し、Force From Nameをオンにします。
  • WPML設定カスタム XML 設定に移動して、以下を追加します。
    <wpml-config>
      <admin-texts>
        <key name="wp_mail_smtp">
          <key name="mail">
            <key name="from_name"/>
          </key>
        </key>
      </admin-texts>
    </wpml-config>
  • お使いのテーマのfunctions.phpファイルに以下のコードを追加します。
    add_filter( 'wp_mail_smtp_options_get', function ( $value, $group, $key ) {
    	if ( 'mail' === $group && 'from_name' === $key && is_string( $value ) ) {
    		$value = apply_filters( 'wpml_translate_single_string', $value, 'admin_texts_wp_mail_smtp', '[wp_mail_smtp][mail]from_name' );
    	}
    	return $value;
    }, 10, 3 );
  • WPML文字列翻訳に移動し、送信者名を翻訳します。
この回避策は、Optimized Email Sendingを使用して送信されるメールには機能しません。このオプションがオンの場合、メールはデフォルト言語の送信者名を保持します。

すべての既知の問題

この問題についてサポートが必要な場合

サポートのご質問をお寄せください。一緒に調査いたします。