X

E-Mail-Benachrichtigung senden, wenn sich die Benutzerrolle in WordPress ändert

Schnipsel von IsItWP

Suchen Sie nach einer Möglichkeit, WordPress-Benutzern E-Mail-Benachrichtigungen zu senden, wenn sich ihre Benutzerrolle ändert? Es gibt wahrscheinlich ein Plugin dafür, aber wir haben einen schnellen Code-Schnipsel erstellt, den Sie verwenden können, um Mitgliedern E-Mail-Benachrichtigungen zu senden, wenn sich ihre Benutzerrolle in WordPress geändert hat.

Anweisungen:

Sie müssen diesen Code nur zur functions.php-Datei Ihres Themes oder in ein websitespezifisches Plugin einfügen:

function user_role_update( $user_id, $new_role ) {
        $site_url = get_bloginfo('wpurl');
        $user_info = get_userdata( $user_id );
        $to = $user_info->user_email; 
        $subject = "Role changed: ".$site_url."";
        $message = "Hello " .$user_info->display_name . " your role has changed on ".$site_url.", congratulations you are now an " . $new_role;
        wp_mail($to, $subject, $message);
}
add_action( 'set_user_role', 'user_role_update', 10, 2);

Hinweis: Wenn Sie zum ersten Mal Code-Schnipsel in WordPress hinzuf ilde{A}gen, lesen Sie bitte unseren Leitfaden, wie Sie Code-Schnipsel richtig in WordPress kopieren / einf ilde{A}gen, damit Sie Ihre Website nicht versehentlich besch ilde{A}digen.

Wenn Ihnen dieser Code-Schnipsel gefallen hat, ziehen Sie bitte in Betracht, unsere anderen Artikel auf der Website zu lesen, wie z. B.: 62 beste kostenlose WordPress-Blog-Themes und 7 beste WordPress-Kontaktformular-Plugins.

Kommentare   Hinterlasse eine Antwort

  1. Wie verwende ich hier HTML-Tags?
    Ich möchte Text fett machen
    $message = „Hallo “ .$user_info->display_name . “ Ihre Rolle hat sich auf “.$site_url.” geändert, herzlichen Glückwunsch, Sie sind jetzt ein “ . $new_role;

    1. Sie könnten versuchen, diesen Code für diese Zeile zu verwenden:

      $message = „Hallo “ .$user_info->display_name . “ Ihre Rolle hat sich auf “.$site_url.” geändert, herzlichen Glückwunsch, Sie sind jetzt ein “ . $new_role . ““;

  2. Perfekt 👍
    Vielen Dank 👏

  3. Ihr Artikel hat mir geholfen, aber er sendet auch E-Mails an neue Registranten. Ich möchte Ihren Code für zwei Rollen verwenden, für die ich benutzerdefinierte Nachrichten haben möchte. Würde dieser Code dafür funktionieren?

    1. Der Code müsste modifiziert werden, um den Wert von $new_role zu überprüfen.

  4. Ich habe diesen Code verwendet, aber keine E-Mail erhalten, als ich meine Rolle geändert habe

    1. Sie sollten vielleicht einen Blick darauf werfen: https://www.isitwp.com/set-configure-smtp-wordpress/

  5. Dieser funktioniert und sendet keine E-Mail, wenn sich jemand neu registriert

    function user_role_update( $user_id, $new_role ) {

    if ($new_role == „customer“) {}

    elseif ($new_role == „role1″||”role2”) {

    $site_url = get_bloginfo(‘wpurl’);
    $user_info = get_userdata( $user_id );
    $to = $user_info->user_email;
    $subject = “Ihr Konto wurde validiert. Sie können jetzt mit 1223.com einkaufen”;
    $message = “Willkommen “ .$user_info->display_name . “! Nachricht .” ;
    wp_mail($to, $subject, $message);
    }}

    add_action( ‘set_user_role’, ‘user_role_update’, 10, 2);

  6. Das war super hilfreich! Danke!

  7. Mariusz Szatkowski 31. Oktober 2013 um 06:59 Uhr

    Hallo,

    1. Danke für den Snippet – aber ich möchte den Benutzer nur benachrichtigen, wenn sich die Rolle eines bestehenden Benutzers ändert.

    Jetzt sendet das Skript eine E-Mail, wenn ein neuer Benutzer zu WP hinzugefügt wird.

    2. Es wäre genauer, den Rollennamen zu senden (jetzt sendet es den Slug)

    Irgendwelche Ideen?

    Danke

    1. Hallo, hast du den Snippet erhalten? Wenn möglich, könntest du mir auch den Link schicken? Denn ich habe dasselbe Problem, dass keine separate E-Mail gesendet wird.

  8. Mariusz Szatkowski 18. September 2013 um 01:56 Uhr

    Hallo, danke für diesen Snippet. Was ist mit dem Senden einer Benachrichtigung, wenn die Rolle zu einem bestimmten Namen geändert wird?

    Z.B. Ich möchte die Benachrichtigung senden, wenn die Benutzerrolle zu „group-x“ geändert wird…

    Danke und freundliche Grüße
    M

  9. Tiago Dufau de Vargas 6. September 2013 um 15:43 Uhr

    Hat mir einen Tag Recherche erspart!! Vielen Dank.

  10. Irgendeine Idee, wie man das löst, wenn die E-Mail nur gesendet werden soll, wenn man ihre Rolle ändert, nicht wenn man die Rolle festlegt? Mit diesem Snippet wird eine E-Mail gesendet, wenn Sie einen neuen Benutzer hinzufügen. Eine E-Mail wird auch gesendet, wenn Sie z.B. den Vornamen eines Benutzers aktualisieren (ohne die Rolle zu berühren).

    1. Tiago Dufau de Vargas 6. September 2013 um 15:46 Uhr

      Sie könnten versuchen, get_userdata zu verwenden und zu überprüfen, ob die aktuelle Benutzerrolle von der neuen abweicht…

  11. Brillant! Danke!

    1. Danke Raam, freut mich zu hören, dass es dir gefällt.

Kommentar hinzufügen

Wir freuen uns, dass Sie einen Kommentar hinterlassen haben. Bitte beachten Sie, dass alle Kommentare gemäß unserer Datenschutzrichtlinie moderiert werden und alle Links nofollow sind. Verwenden Sie KEINE Schlüsselwörter im Namensfeld. Lassen Sie uns ein persönliches und bedeutungsvolles Gespräch führen.

WordPress Launch Checkliste

Die ultimative Checkliste für den Start von WordPress

Wir haben alle wichtigen Checklistenpunkte für den Start Ihrer nächsten WordPress-Website in einem praktischen E-Book zusammengefasst.
Ja, senden Sie mir das kostenlose E-Book!