我需要在WordPress的特定页面上发送404状态代码。该页面未使用404.php模板。最好,我想在我的主题文件中进行,而不是使用.htaccess。
这就是我的工作。
function my_404() {
if ( is_page( 813 ) ) {
header('HTTP/1.1 404 Not Found');
echo 'Testing123'; //This outputs fine, so I know the code is running on the correct page
}
}
add_action( 'wp', 'my_404' );
如果成功,页面看起来会完全相同,除非通过网站分析器运行它会告诉我它返回了404代码。但是,使用此代码,无论如何都会返回200.
答案 0 :(得分:3)
试试这个,这应该可以得到预期的结果:
function my_404() {
if ( is_page( 813 ) ) {
global $wp_query;
$wp_query->set_404();
status_header(404);
nocache_headers();
}
}
add_action( 'wp', 'my_404' );