suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie füge ich einen Link zum Zurücksetzen des WordPress-Passworts in eine HTML-E-Mail ein?

<p>Ich versuche, die E-Mail zum Zurücksetzen des WP-Core-Passworts durch eine HTML-E-Mail zu ersetzen. Insgesamt funktioniert es großartig, die E-Mails sind gut formatiert und werden korrekt gesendet. Allerdings funktioniert die Implementierung eines dynamischen Zurücksetzens des Links nicht (ebenso wie der Benutzername, aber das ist nicht einmal das Wichtigste) </p> <p>Ich habe den folgenden Code in der Functions.php meiner Vorlage verwendet: </p> <pre class="brush:php;toolbar:false;">add_filter( 'wp_mail_content_type','prefix_set_content_type' ); Funktion prefix_set_content_type() { return "text/html"; } add_filter( 'retrieve_password_message', 'replace_retrieve_password_message', 10, 2 ); Funktion replace_retrieve_password_message( $message, $key, $user_login, $user_data ) { $message = '<html...>Viele HTML-Inhalte (hauptsächlich formatierte E-Mails)</html>'</pre> <p>Dies führt zu einem schwerwiegenden Fehler, da die Funktion 4 Parameter erwartet, aber nur 2 empfängt (siehe E-Mail mit dem Fehlerbericht). Wenn ich $user_data und $key weglasse, verschwindet der Fehler, aber ich weiß immer noch nicht, wie ich dynamische Verknüpfungen implementieren soll...</p> <p>Wenn ich versuche, diesen Link in HTML einzubinden, wird nur die Hälfte des Links gesendet (wahrscheinlich aufgrund des „"“): </p> <pre class="brush:php;toolbar:false;">' network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), ' login' ) '</pre> <p>Hat jemand eine Idee, wie dieses Problem gelöst werden kann? Danke. </p>
P粉136356287P粉136356287450 Tage vor607

Antworte allen(1)Ich werde antworten

  • P粉838563523

    P粉8385635232023-09-03 10:30:11

    在这行的末尾放上4,而不是2。

    add_filter('retrieve_password_message', 'replace_retrieve_password_message',10,4);
    

    你必须告诉 add_filter()add_action() 钩子函数需要多少个参数。

    Antwort
    0
  • StornierenAntwort