У меня есть файл шаблона php, созданный этими плагинами Reset Password. Вот оригинальная часть шаблона, которую я хотел бы получить:
$reset_url = som_get_lost_password_url() . "?somresetpass=true&action=rp&key=$key&login=" . rawurlencode($user_login);
$message = __( 'Someone requested that the password be reset for the following account:', 'frontend-reset-password' ) . "<br><br>";
$message .= sprintf( __( 'Username: %s', 'frontend-reset-password' ), $user_login ) . "<br><br>";
$message .= home_url( '/' ) . "<br><br>";
$message .= __( 'If this was a mistake, just ignore this email and nothing will happen.', 'frontend-reset-password' ) . "<br><br>";
$message .= __( 'To reset your password, visit the following address:', 'frontend-reset-password' ) . "<br><br>";
//$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . "\r\n";
// replace PAGE_ID with reset page ID $_GET['somresetpass']
$message .= $reset_url;
Вот что я пытаюсь достичь:
$ reset_url = som_get_lost_password_url (). «? Somresetpass = истина&действие = гр&ключ = $ ключ&login = «. rawurlencode ($ user_login);
$message = __( 'Someone requested that the password be reset for the following account:', 'frontend-reset-password' ) . "<br><br>";
$message .= sprintf( __( 'Username: %s', 'frontend-reset-password' ), $user_login ) . "<br><br>";
$message .= home_url( '/' ) . "<br><br>";
$message .= __( 'If this was a mistake, just ignore this email and nothing will happen.', 'frontend-reset-password' ) . "<br><br>";
$message .= __( 'To reset your password, visit the following address:', 'frontend-reset-password' ) . "<br><br>";
//$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . "\r\n";
// replace PAGE_ID with reset page ID $_GET['somresetpass']
$message .= sprintf(__( '<a href="$reset_url">Reset Your Password</a>', 'frontend-reset-password' ) );
Я изменил последнюю строку, чтобы сделать ее URL-адресом, но она не реагирует на клики в электронном письме, когда это сообщение отправляется пользователям после отправки формы сброса пароля.
Как я могу сделать это кликабельным в электронном письме?
большое спасибо, айнбер. Это работает хорошо; Я просто сделал то, что вы говорите так:
$message .= sprintf(__( "<a href='$reset_url'>Reset Your Password</a>", 'frontend-reset-password' ) );
Могу ли я задать другой вопрос для той же функции? Я пытаюсь выяснить, как отправить вышеуказанную ссылку на основе языков пользователям после того, как они отправят форму сброса пароля. Я использую встроенную тему Polylang, и не могу отделить таким образом:
if (get_locale() == "en_US") {
//send the codes above
}
else {
//send message above in French and change this URL to: home_url()/fr/ ..?
}
Поскольку указанный выше URL-адрес по умолчанию не разделяется между домашним URL-адресом и его страницей; возможно ли этого добиться?
Спасибо
Других решений пока нет …