WordPress实现新文章Email通知功能

开放访客注册的博客都在想尽办法提高网站的PV,像一些之前介绍的投稿,投稿排名这样一系列的功能可以吸引到顾客参与进来,从而可以达到网站最好的效果,开放注册的博客而且可以使用邮件系统来通知注册的用户你的网站有新的文章更新了,这个也是可以很好的提高回头率,下面我们介绍一下这个方法的实现。

首先使用FTP工具登录php虚拟主机到主题目录下把functions.php下载到本地,然后试用文本工具打开把下列的代码添加进去。

1 function
2 newPostNotify($post_ID) {
3  
4     if( wp_is_post_revision($post_ID) ) return;
5  
6     global $wpdb;
7  
8     $get_post_info = get_post($post_ID);
9  
10     if ( $get_post_info->post_status ==
11 'publish' && $_POST['original_post_status'] != 'publish' ) {
12  
13         // 读数据库,获取所有用户的email
14  
15         $wp_user_email =
16 $wpdb->get_results("SELECT DISTINCT user_email FROM
17 $wpdb->users");
18  
19         // 依次给每个Email发邮件
20  
21         foreach ( $wp_user_email as $email ) {
22  
23             // 邮件标题:xx博客有新文章
24  
25             $subject = 'xx博客有新文章';
26  
27             // 邮件内容:新文章网址:+ URL
28  
29             $message = '新文章网址:' . get_permalink($post_ID);
30  
31             // 发邮件
32  
33             wp_mail($email->user_email,$subject, $message);
34  
35         }
36  
37     }
38  
39 }
40  
41 // 钩子,一旦WordPress有新文章发布或文章被修改即刻执行newPostNotify函数
42  
43 add_action('publish_post', 'newPostNotify');

添加进去后把文件保存上传会空间就可以了,当文章更新的时候就会有邮件发送给注册的用户告知消息,这个方法是很多网站都会做的,所以大家可以考虑一下,还有一个问题是要说清楚的,因为wordpress的邮件QQ邮箱是收不到了,所以这个办法还是有点缺陷的,或者大家有能力可以鼓动用户订阅RSS。

你可能感兴趣的:(wordpress,phpmailer)