注意事项:
这取决于查询的页面类型,如果您登录,private
例如,将绘制post状态。
使用过滤器,因为状态是添加到WHERE
子句中,您有一个非常特定的过滤器,可以用来更改实际的查询字符串。
apply_filters_ref_array(\'posts_where\', array( $where, &$this ) );
因此,实际回调与下面的一般示例非常接近:
add_filter( \'posts_where\', \'wpse82200_posts_where_status\' );
function wpse82200_posts_where_status( $where, $query )
{
// Run only once; Don\'t intercept later queries
remove_filter( current_filter(), __FUNCTION__ );
// Do your replace logic here
return $where;
}
当然,您应该在执行查询的行之前添加过滤器回调,这样就不会出现任何问题。该示例在触发一次后自动删除。