[WordPress插件] 百度网盘链接有效性检查插件
之前朋友找我写的一个小插件,感觉可能有人用的上。
功能嘛,如图,然后说明一下用法。
在后台页面,插件会自动搜索每个文章的百度网盘链接,通过ajax请求到百度网盘页面判断有效性。
同时插件里包含一个测试用的短代码:[pan_check link="https://pan.baidu.com"]
短代码用途和后台显示是一样的。
检查方法
检测有效性的核心方法,如下:
//检查网盘链接
function pan_check_link($link)
{
if ($link == '') {
return array('status' => '500', 'msg' => '链接为空');
}
//直接使用WP的请求方法
$response = wp_remote_get($link);
if (is_array($response) && !is_wp_error($response) && $response['response']['code'] == '200') {
$header = $response['headers'];
$body = $response['body'];
if (strpos($body, '页面不存在') !== false) {
return array('status' => '500', 'msg' => '页面不存在');
}
if (strpos($body, '链接不存在') !== false) {
return array('status' => '500', 'msg' => '链接不存在');
}
if (strpos($body, '此链接分享内容可能因为涉及侵权、色情、反动、低俗等信息,无法访问') !== false) {
return array('status' => '500', 'msg' => '已封禁');
}
if (strpos($body, '啊哦,来晚了,该分享文件已过期') !== false) {
return array('status' => '500', 'msg' => '文件已过期');
}
if (strpos($body, '给您加密分享了文件') !== false) {
return array('status' => '200', 'msg' => '加密分享文件');
}
return array('status' => '200', 'msg' => '正常');
} else {
return array('status' => '500', 'msg' => '请求失败');
}
}
总之功能很简单。 wp_remote_get()
内部是curl方法,用来打开页面,检查有效性就是分析返回的页面文本里是否包含指定的文字。
另外,百度网盘对于单 IP 的访问限制大约是50次/分钟,注意不要一次性查询太多了。
插件下载
[afdian_look]
https://yeraph.lanzoul.com/b00jdi2g4j
密码:4dwg
[/afdian_look]
THE END
站点声明:本站部分内容转载自网络,作品版权归原作者及来源网站所有,任何内容转载、商业用途等均须联系原作者并注明来源。
暂无评论