Tak więc WordPress 4.3 ma nowy system haseł, jak wszyscy wiemy. Niestety, ten nowy system wyeliminował możliwość NIE wysyłania nowym użytkownikom wiadomości e-mail.
Mój klient korzystał z systemu, w którym wysyłał niestandardową wiadomość e-mail do swoich klientów, ręcznie rejestrując ich wiadomości e-mail, a następnie wysyłając im wiadomość e-mail z danymi logowania za pomocą niestandardowej wiadomości. Wiemy, że ten nowy system stara się być bardziej bezpieczny, ale to nie działa na tyle kontroli, jakiej by chciał.
Znalazłem następujący kod w poszukiwaniu rozwiązania, aby wyłączyć te e-maile, ale myślę, że wyłączają one powiadomienia e-mail tylko wtedy, gdy e-mail użytkownika został ZMIENIONY dla wcześniej zarejestrowanych użytkowników, a nie przy jego pierwszym utworzeniu:
add_filter( 'send_password_change_email', '__return_false');
add_filter( 'send_email_change_email', '__return_false');
Czy ktoś wie, jak wyłączyć te początkowe e-maile z hasłem wysłane po rejestracji?
Dziękuję Ci.
źródło
add_filter( 'user_registration_email', '__return_false');
Odpowiedzi:
Możesz przechwycić tego e-maila, zanim zostanie on wysłany za pomocą
phpmailer_init
haka.Domyślnie ten hak jest uruchamiany przed wysłaniem wiadomości e-mail. W funkcji poniżej
$phpmailer
będzie instancja PHPMailera i możesz użyć jej metod do usunięcia domyślnego odbiorcy i manipulowania wiadomością e-mail przed jej wysłaniem.źródło
W rzeczywistości zależy to od sposobu utworzenia nowego użytkownika. Jeśli zrobisz to z administracji - Użytkownicy - Dodaj nowy masz rację. W 4.3 niestety nie można wyłączyć wysyłania powiadomienia e-mail. Ale jeśli naprawdę chcesz utworzyć nowego użytkownika bez wiadomości e-mail, istnieje sposób.
Możesz utworzyć małą wtyczkę, w której sam utworzyłbyś nowe konto za pomocą
wp_insert_user
funkcji, która domyślnie nie wysyła żadnych wiadomości e-mail.Tę funkcję można nazwać w ten sposób.
Gdzie
userdata
parametrem jest tablica, w której można przekazać wszystkie potrzebne informacje.Aby uzyskać więcej informacji, sprawdź kodeks tutaj .
źródło
wp_new_user_notification
Funkcja tę zaletę, że można zastąpić je definiując własne. Powinieneś być w stanie skopiować całą funkcję zewp-includes/pluggable.php
swojej wtyczki (lubfunctions.php
) i usunąć wiersz, który wysyła wiadomość e-mail.źródło
Aby rozwiązać ten problem w swoim motywie, utwórz nową wtyczkę mu, tworząc nowy plik
wp_new_user_notifications.php
(nazwa należy do Ciebie) i umieść go wwp-content/mu-plugins
folderze. Jeśli nie ma takiego folderu, utwórz go. Pamiętaj, aby umieścić plik php bezpośrednio w folderze, a nie w żadnym podfolderze.Następnie kontynuuj zgodnie z sugestią Simona - skopiuj
wp_new_user_notifications.php
metodę zewp-includes/pluggable.php
swojego nowegowp_new_user_notifications.php
pliku i zmodyfikuj w razie potrzeby.Aby odpowiedzieć na twoje pytanie: do wyłączenia początkowego hasła wystarczy e-mail, aby usunąć ostatnie
wp_mail
wywołanie metodyźródło
Pracuje. Konieczne jest jednak dodanie go do wtyczki, a nie funkcji.php dla motywu.
Lubić.
źródło