您会看到很多代码,其中包括wp-load.php
或wp-blog-header.php
在加载到WordPress上下文之外的php页面中使用WordPress API。通常有更好的方法来实现这一点。还值得注意的是,任何这样做的插件都会被WordPress拒绝。org插件库,有很好的理由-它容易出现几种类型的失败。
无论如何,在这种情况下,我会add a rewrite endpoint 将请求定向到,因此请求由WordPress处理。
function wpd_mycred_endpoint(){
add_rewrite_endpoint( \'mycred\', EP_ROOT );
}
add_action( \'init\', \'wpd_mycred_endpoint\' );
一如既往,修改重写规则时,必须刷新规则才能生效。这是可以做到的
via the API, 或者只需访问您的设置>永久链接页面。
然后钩住parse_request
操作,检查是否设置了端点,并在那里进行处理。然后退出脚本执行,以便不输出任何其他内容。
function wpd_mycred_parse( $request ){
if( array_key_exists( \'mycred\', $request->query_vars ) ){
// do your POST processing...
die;
}
}
add_action( \'parse_request\', \'wpd_mycred_parse\' );