Como enviar e-mail para autor do post no WordPress

Vamos imaginar uma situação: Você desenvolveu um site onde várias pessoas que contribuem, sendo que eles não tem acesso ao painel do WordPress, esses artigos (Postagens) são enviados para um e-mail, e analisados, e depois publicados. E uma das solicitações dos autores é um recurso para notificação dessas publicações.

Para resolver essa questão, podemos criar uma função, onde ela envia esse e-mail quando é salvo um post. Abaixo o Código da função, comentada (Lembrando que essa função estará no arquivo functions.php):

[php]
/**
* Função para enviar um aviso ao autor da publicação
* @param type $post_id
*/
function notice_published_author($post_id) {

//Resgata as informações do POST
$post = get_post($post_id);
//Status permitido pra o autor receber mensagem
$white_list = array(‘publish’, ‘future’);
//Tipo do post permitido
$post_type = array(‘post’);

//Faz a verificação, para ver se o autor receberá a notificação
if ($post && in_array($post->post_status, $white_list) && in_array($post->post_type, $post_type)) {
//Recupera as informaões do do Autor
$user = get_userdata($post->post_author);
//Título do POST
$title = $post->post_title;
//Permalink do Post
$permalink = get_permalink($post_id);

//Data do Post convertido em timestamp
$date_post = strtotime($post->post_date);

//Data Formatada
$date_format = date_i18n(‘j \d\e F \d\e Y \a\s g:i:s’, $date_post);

//Mensagem que autor irá receber
$message = "Publicação do Post :" . $date_format . "\n\r";
$message .= "Título: $title \n\r";
$message .= "Link: $permalink \n\r";
//Título da mensagem
$subject = "Seu Post foi publicado";
//Envia a mensagem para autor
wp_mail($user->user_email, $subject, $message);
}
}
[/php]

Agora vamos adicionar essa função pra que o WordPress execute quando for adicionar um novo post

[php]
//Adicionar a função, no gancho para um novo Post
add_action(‘wp_insert_post’, ‘notice_published_author’);
[/php]

Agora, a cada novo post, o autor será notificado.

Espero que tenha ajudado.

E até a próxima.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *