WordPress 6.0 中对 do_parse_request 过滤器的更改

在 WordPress 6.0 发布之前,插件和主题开发人员使用do_parse_request 过滤器来热线请求并提前挂钩以呈现自定义页面。不需要的文章查询的页面和 404 查找仍旧会运行,这导致在这些请求上运行不必要的 SQL 查询。

更改

在 6.0 中,我们为 WP 类的parse_request方法添加了一个返回值。如果不需要这些查询,通过do_parse_request过滤器返回 false,将跳过这些查询。

我们鼓励开发人员更新 do_parse_request 过滤器运行的代码, 如果他们正在处理代码中的请求, do_parse_request返回 false。

例子

在最简单的过滤器中:

add_filter( 'do_parse_request', '__return_false' );

但是您可能希望在返回之前检查参数:

function wporg_add_custom_query( $do_parse, $this, $extra_query_vars ) {
    if ( 'CUSTOM_VALUE' === $extra_query_vars['custom_arg'] {
        return false;
    }
 
    return $do_parse;
}
 
add_filter( 'do_parse_request', 'wporg_add_custom_query' );

更多信息,请看官方文档。

文章网址:https://www.wpbull.com/news/1973.html