QQ 邮箱订阅中有这样一个功能:在读者订阅博客后将每天汇总该博客更新信息,并发送至 QQ 邮箱里。我们可以效仿此法,达到同等推广效果。这样一来,网站更新了什么内容即可直接调用信息,批量发送新文章内容至 Email 通知自己的用户。

在服务器开启 Mail 函数情况下,添加以下代码至 Functions.php:

  1. function newPostNotify($post_ID) {  
  2. if( wp_is_post_revision($post_ID) ) return;  
  3.    
  4.      $get_post_info = get_post($post_ID);  
  5. if ( $get_post_info->post_status == 『publish』 && $_POST[『original_post_status』] != 『publish』 ) {  
  6.          //  读数据库,获取所有用户的 email  
  7. 「SELECT DISTINCT user_email FROM $wpdb->users」);  
  8.    
  9. //  依次给每个 Email 发邮件  
  10.         foreach ( $wp_user_email as $email ) {  
  11. //  邮件标题:xx 博客有新文章  
  12.             $subject = 『xx 博客有新文章';  
  13.              //  邮件内容:新文章网址:+ URL  
  14.    
  15. //  发邮件  
  16.             wp_mail($email->user_email, $subject, $message);   
  17.      }  
  18.    
  19. //  钩子,一旦 WordPress 有新文章发布或文章被修改即刻执行 newPostNotify 函数  
  20. add_action(『publish_post』, 『newPostNotify』);