Как автоматически извещать авторов, что их пост опубликован

Если у вас в блоге несколько авторов, и они пишут посты, которые публикуются не сразу, а лишь тогда, когда администратор или редактор решит, то эти авторы вынуждены заходить в блог и смотреть, опубликован ли их пост или еще нет. Однако задачу такого отслеживания можно упростить, если при публикации отсылать авторам автоматическое уведомление по электронной почте. Сделать это можно с помощью специальной функции.

Для этого откройте файл functions.php и добавьте в него следующий код:

function wpr_authorNotification($post_id) {
   global $wpdb;
   $post = get_post($post_id);
   $author = get_userdata($post->post_author);

   $message = "
      Приветствую, ".$author->display_name.",
      Ваш пост, ".$post->post_title." опубликован.
   ";
   wp_mail($author->user_email, "Ваш пост опубликован", $message);
}
add_action('publish_post', 'authorNotification');

Результатом работы этой функции будет автоматическая отправка автору поста письма с текстом о том, что его пост опубликован. Письмо отправляется тогда, когда пост публикуется сразу, когда он из ожидающих утверждения переходит в опубликованные, и когда он меняет статус с черновика на опубликованный.

Автор tiaurus 2182 Articles
Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

5 Комментарии

  1. Приветствую!
    Подскажите, как в это сообщение добавить: пост опубликован в рубрике такой-то.
    И еще можно ли добавить список последних 5 записей.
    Спасибо.

  2. Приветствую всех!

    Подумал на досуге, а почему бы не сделать такую функцию:
    1) автоматическое извещение автора статьи о том, что его пост успешно добавлен (отредактирован) и ожидает проверки модератором;
    2) далее, если одобрен, то письмо автору со ссылкой на страницу его статьи; если наоборот, запись удалена, по разным причинам, то также письмо автору.
    3) например, статья написана хорошо, лаконично, но с ошибками и удалять ее не поднимается рука, модератор отправляет ее в “черновик”, после чего автор статьи получает письмо, с просьбой отредактировать/поправить свою статью. После редактирования статьи автором уже пойдет алгоритм из пункта 1.

    Можно ли такое осуществить? Спасибо!

    • Если еще актуально, то можно попробовать добавить такую строчку:

      add_action('wp_trash_post ', 'authorNotification');

      И тогда при отправке поста в корзину будет вызвана функция authorNotification.

      Кстати тут походу опечатка в посте, должно быть

      function authorNotification($post_id) {

      Список всех действий, на которые можно повестить вызов функции доступен здесь: http://codex.wordpress.org/Plugin_API/Action_Reference

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*