解决WordPress按钮支付插件和微信机器人高级版冲突

如果你的WordPress站点共同使用了WordPress按钮支付(xhshop-2x)和微信机器人高级版(weixin-robot-advanced),那么你的微信机器人高级版肯定会出问题,具体问题是:使用菜单点击推事件或者关键词回复会出现如图所示

简单来说就是在游客进行页面打赏时,会自动生成文章,当时技术宅也烦恼了很久,找WordPress按钮支付插件开发,让我找微信机器人高级版的作者,我知道水煮鱼大哥哥很忙,所以干脆就打开微信机器人高级版的文件自己琢磨了!

果然,在插件目录weixin-robot-advanced/reply找到query.php,里面水煮鱼小哥哥标注了一段代码:

// 日志搜索回复
function weixin_robot_post_query_reply($keyword=''){
	global $wechatObj;

	// 获取除 page 和 attachmet 之外的所有日志类型
	$post_types = get_post_types( array('exclude_from_search' => false) );
	

	if(isset($_GET['debug'])){
		print_r($post_types);
	}

	unset($post_types['page']);
	unset($post_types['attachment']);
	$weixin_count = weixin_robot_get_setting('weixin_count');

看到上面的代码我就有了想法,一般后台插件生成的表单很多都是通过自定义文章类型来实现,这样就好找了,我直接打开数据库,查看表wp_posts,找到生成的一篇文章日志,编辑,果然找到了:

那我们就将上述代码修改为

// 日志搜索回复
function weixin_robot_post_query_reply($keyword=''){
	global $wechatObj;

	// 获取除 page 和 attachmet 之外的所有日志类型
	$post_types = get_post_types( array('exclude_from_search' => false) );
	

	if(isset($_GET['debug'])){
		print_r($post_types);
	}

	unset($post_types['page']);
	unset($post_types['attachment']);
	unset($post_types['xhshop_gratuity']);
	$weixin_count = weixin_robot_get_setting('weixin_count');

就可以了,其实就是添加了需要排除的日志类型

unset($post_types['xhshop_gratuity']);

然后重载PHP,再次使用微信公帐号执行命令,果然解决!
解决方法很简单,如果你WordPress站点有自定义文章类型不想被微信机器人搜到,那就可以使用上述方法,举一反三,相信大家都有这个能力!

技术分享

如何简便寻找GitHub中超棒的项目和实用资源

2018-1-22 19:27:36

技术分享

纲举目张:打通MySQL架构和业务的任督二脉

2018-1-26 2:03:34

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

关于我们

技术宅,专注分享,专注技术!分享互联网科技新闻轶事,分享生活小常识,各种数码使用小技巧!互联网的精神本就是分享,我们坚信分享会带来更多的进步!

Copyright © 2020 技术宅 苏ICP备17056378号 苏公网安备32010202010371号 - 查询 30 次,耗时 0.1648 秒 南京市玄武区酷芯壳网络科技中心 提供技术支持 安全联盟认证