WordPress新评论微信提醒

国内的一些云服务商都关闭了25端口,所以当你在wordpress后台勾上“有人发表评论时发送邮件通知我”,你压根就收不到邮件。就不能及时回复朋友们的留言。所以得另辟蹊径。

Server酱

是什么

「Server酱」,英文名「ServerChan」,是一款「程序员」和「服务器」之间的通信软件。

说人话?就是从服务器推报警和日志到手机的工具。

开通并使用上它,只需要一分钟:

  1. 登入:用GitHub账号登入网站,就能获得一个SCKEY(在「发送消息」页面)
  2. 绑定:点击「微信推送」,扫码关注同时即可完成绑定
  3. 发消息:往 http://sc.ftqq.com/SCKEY.send 发GET请求,就可以在微信里收到消息啦

来个示意图:

scgif.gif


为什么

是的是的,有很多的客户端都可以做到这个功能,比如Slack。那为什么我还要写一个呢?因为它们总是给得太多,我只是要一个简简单单的消息接收器而已。

这也成为了「Server酱」的设计目标:功能越少越好。

  • 只有一个接口:每次调用接口,我们都要去读N长的API说明文档,看得头昏眼花。所以ServerChan只有一个接口,只要会输入网址,你就会用。
  • 一分钟完工:注册账号是狠麻烦的事情,所以我们用GitHub账号;输入账号是狠讨厌的事情,所以我们用绑定二维码。所有这些流程都保证了一个程序员可以在一分钟内配置好「Server酱」,并收到第一条推送消息。你问没有GitHub账号的怎么办?没GitHub账号的还能叫程序员么?
  • 可免客户端:安装客户端对很多用户来说是一种痛苦,但申请微信公号是更大的痛苦,所以我们直接申请好了给你用,就什么痛苦都没了。

应用场景

「Server酱」本质上是一个有着GET接口的可编程消息接收器,所以你可以创造出各种玩法来。

服务器异常报警

在写代码的时候,我们往往会遇到一些可能出现的异常。比如我们的简历分析系统,每隔几天就会出现一份不能分析的简历、我们的邮件发送系统,每发100份激活邮件总有几个被弹回。原来这种时候我们都是在服务器上打下一些日志,然后就再也没有然后了。现在你可以用一行代码把消息推送到「Server酱」。

file_get_contents('http://sc.ftqq.com/SCKEY.send?text='.urlencode('主人第250号简历分析失败啦~'));

调试无法在网页显示回调内容

比如在调试微信接口时,微信服务器会回调我们的服务器。这时候页面的输出是无法看见的。但你可以轻松的把它通过「Server酱」发送到手机上。

向手机发送内容

有时候需要往手机发送一些备用信息,比如电话、地址、网址和图片。因为「Server酱」支持Markdown,所以可以很轻松的完成。

我们在「发送消息」页面提供了一个在线发送工具。

Screen Shot 2015-09-07 at 1.09.49 PM.png

这样你就不用总是在地址栏发消息了。消息内容中填入

[方糖气球](http://ftqq.com)

就可以推送链接;填入

![logo](http://sc.ftqq.com/static/image/bottom_logo.png)

就可以推送图片。在「Server酱」中,直接点击链接和图片,可以在系统浏览器中打开。

注:在 Markdown 语法中,两个空行才是换行,不能换行的同学多加个回车应该就好啦。

整合进wordpress

你当前使用的wordpress主题的目录里面有个functions.php,打开functions.php最后一行是“?>”,把下面的内容加入这一行的上面。记得替换你的 SCKEY。

//评论微信推送  
function sc_send($comment_id)  
{  
$text = '博客上有一条新的评论';  
$comment = get_comment($comment_id);  
$desp = $comment->comment_content;  
$key = '你的SCKEY';  #换成你自己的SCKEY
$postdata = http_build_query(  
array(  
'text' => $text,  
'desp' => $desp  
)  
);  
   
$opts = array('http' =>  
array(  
'method' => 'POST',  
'header' => 'Content-type: application/x-www-form-urlencoded',  
'content' => $postdata  
)  
);  
$context = stream_context_create($opts);  
return $result = file_get_contents('http://sc.ftqq.com/'.$key.'.send', false, $context);  
}  
add_action('comment_post', 'sc_send', 19, 2);  

微信推送新评论效果

完成上面操作之后,当博客有新评论的时候,微信就会收到提醒,速度很快基本上没有延时。

但有一个问题,我只能看到朋友们评论的内容,看不到评论的是哪一篇文章。

改进

我们在刚才的代码中添加一个文章ID进去($comment->comment_post_ID)。

//评论微信推送  
function sc_send($comment_id)  
{  
$text = '博客上有一条新的评论';  
$comment = get_comment($comment_id);  
$desp = $comment->comment_post_ID.$comment->comment_content;  #添加在这行
$key = '你的SCKEY';  #换成你自己的SCKEY
$postdata = http_build_query(  
array(  
'text' => $text,  
'desp' => $desp  
)  
);  
   
$opts = array('http' =>  
array(  
'method' => 'POST',  
'header' => 'Content-type: application/x-www-form-urlencoded',  
'content' => $postdata  
)  
);  
$context = stream_context_create($opts);  
return $result = file_get_contents('http://sc.ftqq.com/'.$key.'.send', false, $context);  
}  
add_action('comment_post', 'sc_send', 19, 2);  

再看效果

此时,我就知道是//hqidi.com/100.html上有新评论。
若你的固定链接设置不是/%post_id%.html,可以用$comment->comment_post_title获取文章标题。微信推送的内容里面就有文章标题,你就知道被评论的文章是哪一篇了。

原创文章,转载请注明: 转载自笛声

本文链接地址: WordPress新评论微信提醒

25 条评论

  • 老刘 2017年9月17日 回复

    你不是不用微信吗!?

    • dige 2017年9月17日 回复 作者

      用啊,从2011年到现在,微信好友已经快20人了呢。

      • banxia 2017年10月2日 回复

        我微信里的人也不多

  • 姜辰 2017年9月17日 回复

    这个我可以考虑整合了哎~~

    • dige 2017年9月17日 回复 作者

      Emlog方面还没有相关教程出来,你可以写一篇,顺便,移动端,你用的啥RSS订阅博客?

      • 姜辰 2017年10月5日 回复

        我用的inoreader。另外你的回复还是没有邮件通知啊

        • dige 2017年10月5日 回复 作者

          一直都有邮件通知,发件人是root@hqidi.xin,刚刚特意测试了。

          • 姜辰 2017年10月6日

            我收到了。= =

  • 不要扛木 2017年9月23日 回复

    好厉害,已经可以微信了。。邮件不用了

  • 懿古今 2017年9月29日 回复

    这个方法确实不错,不过我每天都会登录后台看看评论,所以提不提醒也无所谓了

    • 龙笑天 2017年11月4日 回复

      我都是登录qq直接就邮件提醒了~

  • 懿古今 2017年10月1日 回复

    博主,你好,boke112导航特来拜会,已将贵站收录到博客导航的建站技术类,谢谢支持!

    • dige 2017年10月5日 回复 作者

      谢谢你的支持。

  • 小萝博客 2017年10月2日 回复

    确实便利了

  • 菊部 2017年10月2日 回复

    这个牛逼

  • 九哥 2017年10月5日 回复

    哈哈,一直在用这个,还是挺不错的。

  • HunTrue 2017年10月8日 回复

    这个确实方便,不过我还是更习惯用邮件接收提醒,反正我也没几个评论要回复的(*╹▽╹*)

  • 九哥 2017年10月17日 回复

    不错,我之前用的只有内容,不知道是哪篇文章的评论,这下可以改进了。

  • 爆小妹 2017年11月2日 回复

    这个方法强大!增加微信社交肯定不错!!

  • 过客 2017年11月15日 回复

    示意图看不到了。

  • 迎風别葉index 2017年12月15日 回复

    懒的折腾.jpg

    • dige 2017年12月16日 回复 作者

      欢迎光临.WebP

  • 米粒博客 2018年1月3日 回复

    看起来很不错的样子,只是没什么人,不想说话了

  • 一艘大轮船 2018年1月14日 回复

    学习了,有时间试试,虽然我的连邮件提醒都没有,放寒假了必须该折腾折腾了。

  • 广州网站建设 2018年9月5日 回复

    微信每天一个样

发表评论

电子邮件地址不会被公开。 必填项已用*标注