之前笔者分享过3种实现博客公众号引流的方法,其中就包括使用关键词回复获取密码的插件,不过那个插件的验证码是站长手动输入的,今天给大家推荐的这款是自动生成和获取验证码,实现验证码自动更换引流的功能。
插件代码如下:
captcha = $wx\_captcha; } private function checkSignature() { $signature = $\_GET\["signature"\]; $timestamp = $\_GET\["timestamp"\]; $nonce = $\_GET\["nonce"\]; $token = WX\_TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr, SORT\_STRING); $tmpStr = implode($tmpArr); $tmpStr = sha1($tmpStr); if ($tmpStr == $signature) return true; else return false; } protected function valid() { $echoStr = $\_GET\["echostr"\]; //valid signature , option if ($this->checkSignature()) { echo $echoStr; exit; } else { echo 'error signature'; } } public function responseMsg() { //如果是验证请求,则执行签名验证并退出 if (!empty($\_GET\["echostr"\])) { $this->valid(); //验证签名是否有效 return; //返回退出 } if ($\_SERVER\['REQUEST\_METHOD'\] != 'POST') { echo ''; return; } //如果不是验证请求,则 //首先,取得POST原始数据(XML格式) //$postData = $GLOBALS\["HTTP\_RAW\_POST\_DATA"\]; $postData = file\_get\_contents('php://input'); if (empty($postData)) { echo ''; return; } //如果没有POST数据,则退出 if (!empty($postData)) { //解析POST数据(XML格式) $object = simplexml\_load\_string($postData, 'SimpleXMLElement', LIBXML\_NOCDATA); $messgeType = trim($object->MsgType);//取得消息类型 $this->fromUser = "" . $object->FromUserName; $this->toUser = "" . $object->ToUserName; $keyword = trim($object->Content); if( $messgeType == 'text' && $keyword == '验证码') { $response\_content = '您的验证码为:【'.$this->captcha.'】,验证码有效期为2分钟,请抓紧使用,过期需重新申请'; $xmlTemplate = "本段内容已被隐藏,您需要扫码关注微信公众号申请验证码查看,发送【验证码】获取验证码,验证码2分钟有效
<script type="text/javascript">
QTags.addButton( 'wxcaptcha', '微信公众号验证码可见', '\[wxcaptcha\]', '\[/wxcaptcha\]\\n' );//快捷输入标签
</script>
<?php
} add_action(‘after_wp_tiny_mce’, ‘wx_captcha_btn’);
/*** WP端结束 ***/
你需要配置的地方就两处:
// 此token必须和微信公众平台中的设置保持一致 define(‘WX_TOKEN’, ‘’); define(‘WX_QR’, ‘’);//公众号二维码
一个是wx_token,在微信公众号管理后台可以获取,另外一个就是你公众号的二维码图片地址。
使用方法:
1、下载并安装插件
2、修改插件的wx_token和wx_qr的值。
3、发文章使用短代码[wxcaptcha]和[/wxcaptcha]把需要隐藏的内容包裹起来。