小编mon*_*ndi的帖子

如何禁用特定 Wordpress url 上的 404 标头

我使用此代码将特定 url 重定向到我定制的 Wordpress 主题上的 php 文件:

add_action('wp', function() {
if ( trim(parse_url(add_query_arg(array()), PHP_URL_PATH), '/') === 'pagename' ) {
include(locate_template('mysciprt.php'));
exit();
}});
Run Code Online (Sandbox Code Playgroud)

(我知道我可以使用重写规则,但出于一些原因我需要使用此代码)。

它的工作很棒。问题是该页面仍然有一个 404 状态的 http 标头。这是一个问题,原因有几个(其中一些是:seo,不能使用发布脚本......)。

我的问题是:有什么办法可以解决吗?

我尝试过的:

我尝试添加:

global $wp_query;
status_header(200);
$wp_query->is_page = true;
$wp_query->is_404  = false;
Run Code Online (Sandbox Code Playgroud)

一开始没有帮助,然后我改变了我action('wp'..action('init'...,它起作用了!但问题是我使用'wp'而不是'init'因为我需要get_query_var()在这个脚本上使用而我不能在使用'init'动作时使用。

php wordpress url-rewriting http-headers http-status-code-404

0
推荐指数
1
解决办法
1648
查看次数