如何通过钩子将帖子模板重定向到其他页面

时间:2019-05-28 06:10:56

标签: php wordpress

我正在使用“ 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');

两个钩子单独使用时,它可以工作。 但是一起使用时不起作用。

0 个答案:

没有答案