Support » Allgemeine Fragen » Screen-Nachricht bei „Passwort vergessen“ ändern

  • Gelöst vonJanne

    (@vonjanne)


    Hallo!

    Ich habe eine Website mit Mitgliedschaft (Plugin Paid Memberships Pro). Ich möchte die Nachricht ändern, die am Bildschirm erscheint, wenn ein User ein neues Passwort angefordert hat („Passwort vergessen?“ – abgeschickt). Laut PMPro verwenden sie dafür die basic WordPress Funktionalität. Wo kann ich den Text dieser Meldung (in Englisch steht da nur „Email successfully sent!“) ändern?

    Vielen Dank!

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)
  • Da die Meldung im Core nicht vorkommt, nehme ich an, dass es ein Bestandteil deines gekauften Plugins ist. Das kann ich aber bei gekauften Plugins nicht prüfen, weil sie mir nicht zur Verfügung stehen. Bitte beachte auch die Forenregeln, da wir zu gekauften Themes und Plugins keinen Support anbieten.

    Ohne zusätzliche Plugins meldet das Anmeldeformular bei Absenden eines Auftrags zum Zurücksetzen des Passworts „Bitte schau für den Bestätigungslink in deine E-Mail.“ (im Original „Check your email for the confirmation link.“, wp-login.php:1029)

    Edi

    (@psychosopher)

    Etwas verwirrend, auch das kostenlose Plugin hat das Pro im Namen:

    https://wordpress.org/plugins/paid-memberships-pro/

    Allerdings kann ich weder bei WordPress noch beim Plugin die Phrase „Email successfully sent!“ finden. Was es bei WordPress gibt, ist „Email sent“ („E-Mail gesendet.“).

    Hallo!

    Danke euch erst mal! Ich bin hier nicht auf der Suche nach Support von gekauften Plugins, das habe ich eh von denen (weil gekauft). Die erste Nachricht vom Support dort war „The reset password and reset password confirmation are not controlled by PMPro. This is part of WordPress Core development“, daher war ich hier gelandet. In der Zwischenzeit habe ich noch einen weiterführenden Link von ihnen bekommen, weiß aber leider immer noch nicht genau, was ich tun soll…:

    Home


    Anyone?

    Edi

    (@psychosopher)

    Noch einmal: Es gibt bei WordPress keine Phrase „Email successfully sent!“. Wie Bego erklärt hat, ist die Versandbestätigung beim Zurücksetzen des Passworts „Check your email for the confirmation link.“ Zudem gibt es in einem anderen Zusammenhang ein „Email sent“.

    Wenn Du eine bestehende Phrase ändern willst, kannst Du entweder die Sprachdatei anpassen (beispielsweise mit dem Plugin Loco Translate) oder mit einem Child Theme einen Filter einsetzen. Wie ein Filter aussieht, findest Du unter dem weiterführenden Link in der Dokumentation:

    developer.wordpress.org/reference/functions/add_filter/

    • Diese Antwort wurde geändert vor 11 Monaten von Edi.

    Danke, ich habe schon das erste mal verstanden, dass es diese Phrase nicht gibt. Der Link, den ich posten wollte, wird allerdings leider nicht richtig dargestellt, wie es scheint. Das wäre es gewesen:
    developer.wordpress.org/reference/hooks/retrieve_password_message/
    Der Hinweis dazu vom PMPro Support lautete: „Take a look at the retrieve password hook“. Was ist ein Hook, was mache ich damit…?

    Danke!

    Moderator Bego Mario Garde

    (@pixolin)

    Wenn du Änderungen direkt im WordPress-Core vornimmst, werden diese Änderungen beim nächsten Update überschrieben. Außerdem wäre das nicht sehr wartungsfreundlich, weil du bei jedem Kunden prüfen müsstest, welche Besonderheiten es am (eigentlich standardisierten) Code gibt. Deshalb haben die Entwickler so genannte „Hooks“ eingeführt, also Schnittstellen über die du Funktion selber anpassen kannst, ohne Änderungen am Core selber vornehmen zu müssen. Ich versuche mal, das ein wenig zu erklären:

    Nehmen wir an, im WordPress gäbe es eine Funktion say_hello():

    function say_hello( $arg ) {
       $greeting = 'Hallo';
       echo $greeting . ' ' . $arg;
    }

    Diese Funktion gibt bei Aufruf von z.B. say_hello( 'Donald Duck' ) den Text-String „Hallo Donald Duck“ aus. Die Funktion gibt aber immer „Hallo {Name}“ aus und du kannst eigentlich nur den ausgegebenen Namen über die Übergabe eines Arguments ändern, nicht aber die Anrede. (Das hätte man in diesem sehr einfach konstruierten Beispiel auch über ein zusätzliches Attribut $greeting lösen können, im Core gibt es aber kompliziertere Funktionen, bei denen die Anpassung über ein weiteres Attribut aus Gründen unerwünscht ist.)

    Um die Funktion nun etwas flexibler zu machen, fügen wir mit der Funktion do_action() eine Schnittstelle ein:

    function say_hello( $arg ) {
       $greeting = 'Hallo';
    
       do_action( 'say_hello', $greeting );
     
       echo $greeting . ' ' . $arg;
    }

    Möchte jetzt jemand die Funktionalität dieser Funktion ändern, kann er sich in die Funktion „einhaken“ und die Ausgaben ändern:

    add_action( 'say_hello', 'my_greeting' );
    function my_greeting( $greeting ) {
      $greeting = $greeting . ", schön dich zu sehen,";
      return $greeting;
    }

    Durch Rückgabe eines anderen Wertes wird der Inhalt der Variable $greeting also verändert, was sich direkt auf die Ausgabe auswirkt: die Funktion gibt jetzt „Hallo, schön dich zu sehen, {Name}“ aus und aus say_hello( 'Micky Maus' ) wird „Hallo, schön dich zu sehen, Micky Maus“.

    Möchtest du selber an irgendeiner Stelle in WordPress Änderungen vornehmen, musst du zuerst schauen, welche Funktion dafür verwendet wird. Dazu prüfst du, welches Template oder welche Core-Datei für die Ausgabe verwendet wird und suchst dort nach den genutzten Funktionen. In der Funktion schaust du nach, ob es eine Funktion do_action() gibt (nur dann hast du eine Anpassungsmöglichkeit, ohne den Core zu ändern!) und welche Parameter du mit einer Funktion add_action() ändern kannst.

    Viele Themes und Plugins nutzen Hooks. Wird Text anders ausgegeben, als im Core vorgesehen, kannst du in den verwendeten Themes und Plugins nach verwendeten Hooks suchen. Wird dort mit add_action() etwas geändert, kannst du die Anpassung mit remove_action() auch wieder „aushebeln“ und statt dessen mit add_action() deine eigene Anpassung hinzufügen.

    Das ist alles nicht unbedingt trivial und ich würde das in einem Einsteigerkurs nicht einmal erwähnen („Ein Teil dieser Antworten würde die Bevölkerung verunsichern.“ 😉 ). Aber da du gefragt hast …

    Vielen Dank!

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)
  • Das Thema „Screen-Nachricht bei „Passwort vergessen“ ändern“ ist für neue Antworten geschlossen.