付费节点推荐
免费节点
节点使用教程
很多WordPress博客都开放了用户注册的功能,用户可以参与到博客的内容建设当中来,也就是一个博客由多个用户来写。现在有这样的需求,如何实现在某一个用户发表文章后,其他用户都能收到Email通知?下面是实现方法:
在当前的WordPress主题目录下的functions.php中,添加以下php代码就可以了:
[cc lang="php"]
function newPostNotify($post_ID) {
if( wp_is_post_revision($post_ID) ) return;
global $wpdb;
$get_post_info = get_post($post_ID);
if ( $get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish' ) {
// 读数据库,获取所有用户的email
$wp_user_email = $wpdb->get_col("SELECT DISTINCT user_email FROM $wpdb->users");
// 邮件标题
$subject = 'bcoder编程网有新文章';
// 邮件内容
$message = '文章标题:' . get_the_title($post_ID) . '
';
$message .= '文章网址:' . get_permalink($post_ID) . '
';
// 发邮件
$message_headers = "Content-Type: text/html; charset=\"utf-8\"\n";
wp_mail($wp_user_email, $subject, $message, $message_headers);
}
}
// 钩子,一旦WordPress有新文章发布或文章被修改即刻执行newPostNotify函数
add_action('publish_post', 'newPostNotify');
[/cc]
你可以根据自己的实际,修改邮件的标题和内容。
如果你想不想折腾代码,可以使用 Notify Users E-Mail 插件,支持自定义接收邮件的用户类型、邮件主题和内容,也可以添加额外的收件人:
如果你还想给网站添加邮件订阅功能,可以使用 Simple Subscribe 插件,它不仅可同时支持给订阅用户和已注册用户发送邮件通知哦!
当然,只要发送邮件,就必须确保你的主机支持 mail 函数,或者使用 SMTP 功能。
未经允许不得转载:Bcoder资源网 » WordPress发布新文章Email通知注册用户
评论前必须登录!
登陆 注册