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

use*_*966 1 wordpress http function

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

可能类似于is_404($url),但此函数无需参数即可工作。

提前致谢。

iEm*_*ele 5

使用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);
    }
}
Run Code Online (Sandbox Code Playgroud)

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