Wordpress评论邮件回复功能代码实现出现问题,大神来看一下
wordpress吧
全部回复
仅看楼主
level 13
2017年02月20日 09点02分 1
level 13
使用的是以下评论回复代码
/* 开始*/
function comment_mail_notify($comment_id) {
$admin_notify = '1'; // admin 要不要收回复通知 ( '1'=要 ; '0'=不要 )
$admin_email = get_bloginfo ('admin_email'); // $admin_email 可改为你指定的 e-mail.
$comment = get_comment($comment_id);
$comment_author_email = trim($comment->comment_author_email);
$parent_id = $comment->comment_parent ? $comment->comment_parent : '';
global $wpdb;
if ($wpdb->query("Describe {$wpdb->comments} comment_mail_notify") == '')
$wpdb->query("ALTER TABLE {$wpdb->comments} ADD COLUMN comment_mail_notify TINYINT NOT NULL DEFAULT 0;");
if (($comment_author_email != $admin_email && isset($_POST['comment_mail_notify'])) || ($comment_author_email == $admin_email && $admin_notify == '1'))
$wpdb->query("UPDATE {$wpdb->comments} SET comment_mail_notify='1' WHERE comment_ID='$comment_id'");
$notify = $parent_id ? get_comment($parent_id)->comment_mail_notify : '0';
$spam_confirmed = $comment->comment_approved;
if ($parent_id != '' && $spam_confirmed != 'spam' && $notify == '1') {
$wp_email = 'no-reply@' . preg_replace('
#^www\.#
', '', strtolower($_SERVER['SERVER_NAME'])); // e-mail 发出点, no-reply 可改为可用的 e-mail.
$to = trim(get_comment($parent_id)->comment_author_email);
$subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
$message = '
#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;">
' . trim(get_comment($parent_id)->comment_author) . ', 您好!
您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:'
. trim(get_comment($parent_id)->comment_content) . '
' . trim($comment->comment_author) . ' 给您的回复:'
. trim($comment->comment_content) . '
您可以点击查看回复的完整內容
还要再度光临 ' . get_option('blogname') . '
(此邮件由系统自动发送,请勿回复.)
';
$from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
$headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
wp_mail( $to, $subject, $message, $headers );
//echo 'mail to ', $to, ' ' , $subject, $message; // for testing
}
}
add_action('comment_post', 'comment_mail_notify');
/* 自动加勾选栏 */
function add_checkbox() {
echo '有人回复时邮件通知我';
}
add_action('comment_form', 'add_checkbox');
2017年02月20日 09点02分 2
代码使用wordpress mail()函数,就是wp mail smtp插件使用php mail() 发送邮件,我测试过好几次是可以收到邮件的,倒是使用mail()函数发邮件很多邮箱都当垃圾或者根本收不到,所以我想使用smtp发邮件
2017年02月20日 09点02分
level 11
尝试配合WP-SMTP使用
百度搜索BanYuner,了解更多资源。企鹅交流群:3空格3049空格598空格2
2017年02月20日 09点02分 3
我想使用smtp发信,mail()发送邮件很多邮箱都收不到,我通过wp mail smtp插件配置好了smtp,访客评论就是收不到邮件,设置成php mail()就能收到,设置smtp其他wordpress邮件功能都能用,就是使用以上代码不能实现访客收到邮件提醒,代码有问题吗?
2017年02月20日 09点02分
level 13
我在wp mail smtp插件中设置smtp发信,发测试邮件能收到,wordpress访客评论邮件提醒功能打开,有访客评论我能收到,但是回复访客,访客收不到邮件提醒,使用mail()函数方式给访客回复,访客能收到提醒的邮件。搞不懂,是smtp插件与代码有冲突吗,怎么设置上诉代码使用smtp回复访客呢,大神啊,给个解决办法吧。
2017年02月20日 09点02分 4
level 13
如何在上述代码中设置smtp发信方式,求帮助!
2017年02月20日 10点02分 5
level 1
我的主题写了邮箱回复函数 但就是接收不到邮件 我百度了网上 网上给的代码都一样 然而复制了他们的代码放进去 还是不能 哎
2020年03月31日 04点03分 9
用插件啊兄弟
2020年04月18日 04点04分
1