Portanto, o WordPress 4.3 possui um novo sistema de senhas, como todos sabemos. Infelizmente, este novo sistema eliminou a capacidade de NÃO enviar um email a novos usuários.
Meu cliente estava usando um sistema em que ele enviava um email personalizado para ele, registrando manualmente seus emails e enviando um email com as informações de login com uma mensagem personalizada. Estamos cientes de que esse novo sistema está tentando ser mais seguro, mas isso não funciona para a quantidade de controle que ele gostaria.
Encontrei o código a seguir na minha busca por uma solução para desativar esses emails, mas acho que eles desativam os emails de notificação apenas se o email de um usuário for ALTERADO para usuários registrados anteriormente, não quando ele for criado:
add_filter( 'send_password_change_email', '__return_false');
add_filter( 'send_email_change_email', '__return_false');
Alguém sabe como desativar esses e-mails de senha inicial enviados após o registro?
Obrigado.
fonte
add_filter( 'user_registration_email', '__return_false');
Respostas:
Você pode interceptar este email antes de enviá-lo usando o
phpmailer_init
gancho.Por padrão, esse gancho é acionado antes que qualquer email seja enviado. Na função abaixo,
$phpmailer
haverá uma instância do PHPMailer e você pode usar seus métodos para remover o destinatário padrão e manipular o email antes de ser enviado.fonte
Na verdade, depende de como você cria o novo usuário. Se você fizer isso da administração - Usuários - Adicionar novo, você está certo. Infelizmente, na versão 4.3, você não pode desativar o envio do email de notificação. Mas se você realmente deseja criar um novo usuário sem o email, existe uma maneira.
Você pode criar um pequeno plug-in no qual criaria uma nova conta por meio da
wp_insert_user
função, que não envia nenhum email por padrão.Esta função pode ser chamada assim.
Onde o
userdata
parâmetro é uma matriz onde você pode passar todas as informações necessárias.Para mais informações, consulte o codex aqui .
fonte
A
wp_new_user_notification
função é plugável, para que você possa substituí-la definindo sua própria. Você deve poder copiar toda a função dowp-includes/pluggable.php
seu plug-in (oufunctions.php
) e remover a linha que envia o email.fonte
Para resolver isso no seu tema, crie um novo mu-plugin criando um novo arquivo
wp_new_user_notifications.php
(o nome é seu) e coloque-o nawp-content/mu-plugins
pasta Se não houver uma pasta como essa, crie uma. Lembre-se de colocar o arquivo php diretamente na pasta, e não em nenhuma subpasta.Depois continue como Simon sugeriu - copie o
wp_new_user_notifications.php
métodowp-includes/pluggable.php
para seu novowp_new_user_notifications.php
arquivo e modifique-o conforme necessário.Para responder à sua pergunta: para desativar os e-mails com senha inicial, basta remover a última
wp_mail
chamada de método.fonte
Trabalho. Mas é essencial que ele seja adicionado ao plugin e não o functions.php do tema.
Gostar.
fonte