我正在使用“ pre_get_posts”钩子进行make查询,某些post id不是not_in用于默认查询 这是可行的,该帖子ID在浏览器中打开,因此无法重定向到页面 例如:
// for posts not_in in query
function posts_not_in_func($query)
{
if( !is_admin() && $query->is_main_query() ) {
$query->set( 'post__not_in' , array(13764,13765,13767,13768));
}
}
add_action('pre_get_posts', 'posts_not_in_func');
但是我想重定向自定义页面,所以我正在使用'template_redirect'挂钩 例子-
// redirect post ids
function posts_redirect_fun(){
if (is_single()) {
global $post;
$posts_ids = array(13764,13765,13766,13767,13768);
if (in_array($post->ID, $posts_ids)) {
wp_redirect(get_permalink(199029));
exit;
}
}
}
add_action('template_redirect', 'posts_redirect_fun');
两个钩子单独使用时,它可以工作。 但是一起使用时不起作用。