2017-08-30 50 views
0

我试图用pre_get_posts函数将标签模板作为目标添加到查询中。我使用的代码似乎超级基础,应该没有问题。然而,它并没有打破查询,更重要的是,它破坏了自定义菜单仅在该标签模板上返回。WordPress pre_get_posts导致自定义菜单失败

function tags_support_query($query) { 
    if (is_tag()) { 
     $query->set('post_type', 'any'); 
    } 
} 

add_action('pre_get_posts', 'tags_support_query'); 

非常感谢您的任何意见和建议。

+0

当你说“破查询”,到底是什么意思呢? – FluffyKitten

回答

0

添加$query->is_main_query()约束if语句象下面这样:

function tags_support_query($query) { 
    if(is_tag() && $query->is_main_query()) { 
     $query->set('post_type', 'any'); 
    } 
}