检查HTTP请求是返回404还是找不到页面

时间:2013-08-27 18:54:39

标签: wordpress function http

我正在搜索一个函数,告诉我一个URL是否在WordPress中返回404 HTTP错误或“找不到页面”。

可能类似is_404($url),但此功能不带参数。

提前致谢。

1 个答案:

答案 0 :(得分:4)

使用curl可以实现这一目标。

修改

将此添加到你的functions.php:

function wpcf_is_404( $url = null ){
    $code = '';
    if( is_null( $url ) ){
        return false;
    }else{
        $handle = curl_init($url);
        curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);
        curl_exec($handle);
        $code = curl_getinfo($handle, CURLINFO_HTTP_CODE);
        if( $code == '404' ){
            return true;
        }else{
            return false;
        }
        curl_close($handle);
    }
}

然后在模板文件或functions.php中调用wpcf_is_404();来测试给定的url是返回true(404)还是false(所有其他响应) 希望能帮助到你!