[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
夜华子酱我知道你很急,但你先别急