免插件将wordpress网站无缝对接微信公众号

微信公众号目前已经非常普及,但凡使用wordpress程序建站的站长都希望能将自己的网站和微信公众号能实现无缝对接。受wordpress程序开放包容的好处影响,要实现这样的功能也不是很难,有很多这方面的插件可以实现这个功能。这些插件中,尤其以我爱水煮鱼开发的微信机器人插件为优秀。微信机器人是我爱水煮鱼开发的一款WordPress连接微信公众号的插件,这款插件原本是付费的,后来插件作者将其免费开放下载,插件功能齐全,囊括了目前所有的微信公众号类型,这款插件也算是我尝试的所有WordPress连接微信公众号插件中最好用的一个了,但是这款插件有一个不太好的地方,那就是插件无法单独使用,我们要正确启用这款插件就需要先启动我爱水煮鱼的另一款插件 WPJAM Basic 。自 WPJAM Basic 2.6版本后,这款插件就作为一款基础库,我爱水煮鱼的很多插件都是基于 WPJAM Basic 开发的,所以我们如果想使用微信机器人高级版就必须启用 WPJAM Basic 。

对于强迫症患者而言,插件这东西能少一个是一个。况且,微信机器人里面有很多功能我们日常是用不到的,日常的小站长无非就是实现网站微信公众号数据互通,可以通过微信公众号实现网站内容访问而忆。再则,现在的微信机器人 5.0 版本对服务器要求非常高,只支持 Linux 服务器,PHP 要求 7.2 及以上版本,以及服务器要支持 Memcached。这种要求,可能有很多小站长只能望而却步了吧。

最近申请了微信公众号,投入使用,一番折腾后总算实现了免插件将wordpress网站无缝对接微信公众号的功能。演示效果可关注微信公众号“霭客溪”或扫描下图二维码体验。

使用方法是将代码中的数据库链接信息,改成你WordPress的数据库链接信息,默认的token为aike,可修改为自己的token,需要与微信公众号后台的token对应,将代码存为weixin.php文件上传到你的WordPress站点目录,任何文件夹下都可以,根目录下也可以,只要是在你WordPress目录下就行。

完成上面的步骤后进入微信公众号平台,在基本设置里面设置对接信息,注意对应好token的值。然后就可以实现wordpress网站无缝链接微信公众号功能了。我个人是代码小白,此代码也是自网络上拷贝修改后自己验证而来,如果有问题的可以留言交流,解决问题那就想多了,因为我也不会。。。。不过,我现在的网站用的就是这方法,你要相信哥不会骗你的。

代码如下 :

[infobox]以下内容需回复后刷新可见[/infobox]

[reply]<?php
/*
@author:霭客溪网
@url:https://www.aikexi.com
*/
//获取数据并排序
$timestamp=$_GET[‘timestamp’];
$nonce=$_GET[‘nonce’];
$token=’aike’;
$signature=$_GET[‘signature’];
$array = array($timestamp,$nonce,$token);
sort($array);
//拼接数据并sha1加密
$tmpstr=implode(”, $array);
$tmpstr=sha1($tmpstr);
//数据验证
if($tmpstr==$signature && $_GET[‘echostr’]){
echo $_GET[‘echostr’];
exit;
}else{
reponseMsg();
}
function reponseMsg(){
$postArr=file_get_contents(‘php://input’);
$postObj=simplexml_load_string($postArr);
if(strtolower($postObj->MsgType)==’event’){
if(strtolower($postObj->Event)==’subscribe’){
$toUser=$postObj->FromUserName;
$fromUser=$postObj->ToUserName;
$time=time();
$MsgType=’text’;
$content=”欢迎关注霭客溪。\n请直接回复关键字检索文章\n也可直接进入<a href=’https://www.aikexi.com’>霭客溪网</a>”;
$template=” <xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>”;
$info=sprintf($template,$toUser,$fromUser,$time,$MsgType,$content);
echo $info;
}
}
if(strtolower($postObj->MsgType)==’text’){
$postcontent=$postObj->Content;
$conn=mysqli_connect(‘localhost’,’数据库用户名’,’数据库密码’,’数据库名’);//这里修改数据库链接信息
$sql = “select * from wp_posts where post_title like ‘%$postcontent%’ and post_status=’publish'”;
$result = mysqli_query($conn,$sql);
$row=mysqli_fetch_all($result,MYSQLI_ASSOC);
$toUser=$postObj->FromUserName;
$fromUser=$postObj->ToUserName;
$time=time();
if(count($row) <= 8 && count($row) != 0){
$MsgType=’news’;
$template ='<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<ArticleCount>%s</ArticleCount>
<Articles>’;
foreach ($row as $key => $value) {
$template .=”<item>
<Title><![CDATA[“.$value[‘post_title’].”]]></Title>
<Description><![CDATA[点击查看]]></Description>
<PicUrl><![CDATA[https://cdn.aikexi.com/wp-content/uploads/2018/08/2018080313505345.png]]></PicUrl>
<Url><![CDATA[“.$value[‘guid’].”]]></Url>
</item>”;
}
$template .='</Articles>
</xml>’;
$info=sprintf($template,$toUser,$fromUser,$time,$MsgType,count($row));
echo $info;
}else if(count($row) == 0){
$MsgType=’text’;
$content=’暂未检索到相关文章,请换个关键字试试’;
$template=” <xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>”;
$info=sprintf($template,$toUser,$fromUser,$time,$MsgType,$content);
echo $info;
}else{
$MsgType=’text’;
$content=’符合关键字的文章太多,请多输入几个字再次检索’;
$template=” <xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>”;
$info=sprintf($template,$toUser,$fromUser,$time,$MsgType,$content);
echo $info;
}
mysqli_close($conn);

}
}

?>
[/reply]

 

人已赞赏
他山之石

wordpress网站免插件方式实现自动镜像到七牛云存储(支付https网站)

2018-8-16 11:48:08

他山之石

微信公众号开发模式下自定义菜单设置教程

2018-8-20 10:20:03

49 条回复 A文章作者 M管理员
  1. dasdsasdasdasdsadasdsasdad撒旦撒旦撒撒旦撒

  2. 这段代码 应该复制到哪里去啊 在哪里输入这段代码啊

  3. 牛批

  4. 看看 不懂

  5. 看看

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索