问题概述
当您将 WPML 与 WP Mail SMTP (在新标签页中打开) 配合使用时,您无法翻译电子邮件的发件人名称。次要语言的电子邮件将使用默认语言的发件人名称发送。
临时解决方法
请在继续操作前,确保您已对网站进行了完整网站备份。
- 前往 WP Mail SMTP设置 并开启强制发件人名称。
- 前往 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字符串翻译 并翻译发件人名称。