小任还不容易搞定了腾讯云这个坑人的安全组,实现了smtp的方式发邮件,具体文章:WordPress腾讯云服务器SMTP不能发邮件的解决办法,但是经过了测试发现,这个对于评论邮件回复居然没有用,但是有新评论的时候是会发邮件通知我的……这就很奇怪,于是我又进入了折腾。

知更鸟主题自带

最新版本的知更鸟主题是整合了这个评论邮件回复的功能的,而且我后台也开了这个功能,那么为什么会无效呢,查看了下代码,看不懂,上网搜了一下,我想那我直接用网上的方法将评论回复的代码写在模版函数function.php里,这里附上评论回复的代码。

/* 开始*/
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 = '<div style="background-color:#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;"><p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p><p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />'. trim(get_comment($parent_id)->comment_content) . '</p><p>' . trim($comment->comment_author) . ' 给您的回复:<br />'. trim($comment->comment_content) . '<br /></p><p>您可以点击查看回复的完整內容</p><p>还要再度光临 ' . get_option('blogname') . '</p><p>(此邮件由系统自动发送,请勿回复.)</p></div>';$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 );}
}
add_action('comment_post', 'comment_mail_notify');
/* 自动加勾选栏 */
function add_checkbox() {echo '<input type="checkbox" name="comment_mail_notify" id="comment_mail_notify" value="comment_mail_notify" checked="checked" style="margin-left:20px;" /><label for="comment_mail_notify">有人回复时邮件通知我</label>';
}
add_action('comment_form', 'add_checkbox');

然后关闭知更鸟的评论邮件回复,结果出错了,具体的错误我没有截图,就是那种打开网站提示你某一行代码致命错误的那种。

我看了一下那行错误的代码,它调用了一个文件,那个文件的路径是begin/inc/notify.php,打开一看发现是评论回复的代码,我想应该是整合在这个文件里面,然后调用,错误估计是重复了。

解决办法

对于我这样的菜鸟来说,不会修改代码调用,虽然我知道只需要将知更鸟的调用取消了,然后删除notify.php就行,但是我不会,所以放弃,本来我想等以后学了php自己来改,或者出点红包让人修改,但是我今天心血来潮的一次尝试解决了这个问题。

我以前用的smtp发信是用WP-Mail-SMTP插件实现的,今天看到一段smtp的代码,抱着少一个插件的想法我删除了WP-Mail-SMTP,使用smtp代码发信,没想到居然实现了评论回复,真是奇怪,难道是插件的问题,有跟我一样问题的朋友可以试试这个代码。

//使用smtp发送邮件(请根据自己使用的邮箱设置SMTP)
add_action('phpmailer_init', 'mail_smtp');
function mail_smtp( $phpmailer ) {$phpmailer->FromName = '小任'; //发件人名称$phpmailer->Host = 'smtp.qq.com'; //修改为你使用的邮箱SMTP服务器$phpmailer->Port = 465; //SMTP端口$phpmailer->Username = '123@qq.com'; //邮箱账户$phpmailer->Password = '123123123'; //邮箱密码$phpmailer->From = '123@qq.com'; //邮箱账户$phpmailer->SMTPAuth = true;$phpmailer->SMTPSecure = 'ssl'; //tls or ssl (port=25时->留空,465时->ssl)$phpmailer->IsSMTP();
}

smtp服务器和端口我就不写了,这些上网都可以搜到,我用的是腾讯企业邮箱,其他的还有QQ邮箱,163邮箱等。
本文原地址:https://xiaorenjc.net/110.html

WordPress知更鸟(Begin)主题评论邮件回复失效的解决办法相关推荐

  1. wordpress php7 报错,Use of undefined constant taotag-assumed 'taotag'知更鸟begin主题PHP7.0报错WordPress5.2...

    最近发现WordPress5.2知更鸟begin主题 在PHP7.0以上的版本上会保存的问题,具体错误代码如下 下面就来说说如何处理php7.0以上就报错的问题: 显示错误如下: Warning: U ...

  2. Contact Form 7邮件发送失败的解决办法 - 风沙渡

    Contact Form 7邮件发送失败的解决办法 - 风沙渡 时间 2014-08-25 19:47:00 博客园-所有随笔区 原文  http://www.cnblogs.com/wuyingho ...

  3. WordPress网站加载WAITING (TTFB) 时间过长解决办法

    WordPress 刚刚安装的时候,性能是没问题的,我们安装了主题.插件.添加了一些小工具和菜单,然后我们就开始上传内容了,我们都很勤快 Waiting (TTFB) 时间 Time to First ...

  4. Contact Form 7邮件发送失败的解决办法

    Contact Form 7邮件发送失败的解决办法 一.contact form 7无法发送邮件的原因 对mail()函数的不支持. Contact Form 7表单提交失败在使用过程中会出现,归根结 ...

  5. iframe 内嵌第三方网站 cookie 失效,解决办法

    iframe 内嵌第三方网站 cookie 失效,解决办法 网站iframe内嵌第三方带登录页的网站时,在ie和火狐和部分谷歌浏览器是可以的,但是在升级版的谷歌浏览器中是无法访问的 问题是谷歌浏览器在 ...

  6. 定义了浮动元素后margin-bottom失效的解决办法

    2019独角兽企业重金招聘Python工程师标准>>> 虽然IE6慢慢的退出市场了,但是还是有必要了解一些兼容问题,让自己的知识有一个更好的沉淀.margin-bottom的bug是 ...

  7. xcode4 语法高亮和自动补全失效的解决办法

    xcode4 语法高亮和自动补全失效的解决办法 xcode4有一个bug,某些时候会造成类名的着色显示不出来,还有就是代码补全不能完全显示,而且没有参数. 解决方法: 首先关闭项目窗口,然后到Orga ...

  8. iOS Safari 中click点击事件失效的解决办法

    转载自:https://www.cnblogs.com/Steping/p/5737547.html 问题起因: 在微信公众号开发(微站)过程中用jquery的live方法绑定的click事件点击无效 ...

  9. 当子元素用position:relative;时,父元素的overflow:hidden;在ie中失效的解决办法

    当子元素用position:relative;时,父元素的overflow:hidden;在ie中失效的解决办法: 给父元素也加上position:relative; 到现在也不知道为什么会出现这样的 ...

最新文章

  1. C#类型转换运算符之 explicit implicit
  2. javascript 实现快排 ,三向切分快排
  3. 阿里文娱测试开发专家谈《算法基石:实时数据质量如何保障?》
  4. 【JAVASCRIPT】表单序列化问题
  5. java 怎样展示二维画矩阵图_如何用java绘制矩阵的图
  6. ubuntu下eclipse搭建安卓开发环境
  7. Mongodb的oplogsize修改
  8. 第四章: 元语言抽象
  9. 论文页眉设置奇数偶数页不同页眉,奇数页为各章题目,偶数页为论文题目
  10. Android学习笔记--菜单
  11. RASNet视频目标跟踪论文笔记
  12. 正六边形C语言输出算法记录
  13. 加速度传感器灵敏度表示的几种方式LSB/g,count/g,V/g,V/°,请给出几种方式之间的说明及转换公式
  14. OSI(open system internet)七层模型介绍以及NAT(Network Address Translation)技术详解
  15. XP系统硬盘安装Ubuntu14.04-超详细
  16. 摄影基础之【**相机画幅、人眼视角范围**】
  17. 第三方支付-核心交易之商户结算设计
  18. 算法学习之实现二维矩阵的顺时针遍历
  19. 课程设计题目:基于python实现人脸识别打卡
  20. 个人买卖二手住房税收政策

热门文章

  1. shell颜色代码(ANSI控制码)
  2. 化学实验室自动化 - 1. 深度学习视觉检测(实例分割) - COCO格式的化学实验室常见物体实例分割数据集制作
  3. joomla后台组件菜单设置
  4. 北大教授都在推荐的python漫画书,还不赶紧收藏,学习起来
  5. Flex布局下,如何让最后一项靠右
  6. SQL Server函数,你想要的都在这
  7. RabbitMQ之Consumer
  8. 建筑业供应链具有哪些特点?
  9. 3D园区数据可视化建筑三维模型大屏展示
  10. 认识弹性盒子flex