2017-01-21 124 views
0

检测WordPress响应是否由REST API生成的最佳方式是什么?目前还没有像is_feed()is_page()这样的条件标签?检测WordPress REST API响应?

WordPress生命周期后期的一些挂钩可能会改变输出,比如天真地附加html标签或调试内容。问题是,如果响应是来自REST API的JSON blob,则附加内容将使JSON响应无效。

is_feed conditional tag不会将REST API响应识别为供稿并返回false

回答

1

wp-includes/rest-api.php中的方法定义了一个REST_REQUEST常数,它有助于标记为“这是否是REST请求”。那个常数然后在class-wp-query.php检查。这里有一个基于该检查的条件函数:

function is_rest() { 
    return (defined('REST_REQUEST') && REST_REQUEST); 
}