Навигационные меню не отображаются из-за настраиваемого фильтра типов записей
Я использую этот фильтр для отображения содержимого всех пользовательских типов записей на странице архива тегов
function tagFilter($query) {
$post_type = $_GET['type'];
if (is_tag()){
if (!$post_type) {
$post_type = 'any';
}
$query->set('post_type', $post_type);
}
return $query;
};
add_filter('pre_get_posts','tagFilter');
Но каким-то образом это останавливает функцию wp_nav_menu
, и меню навигации не отображаются на страницах архива тегов.
Я не могу понять, в чем заключается конфликт между этими двумя.
Есть идеи?
1
1 answers
Это:
if (is_tag()){
Будет верно для любого запроса на странице архива тегов, включая запрос, который WordPress делает для загрузки пунктов меню.
Вы хотите проверить, является ли текущий запрос одновременно основным запросом и запросом тегов:
if ($query->is_main_query() && $query->is_tag()){
4
Author: Milo, 2013-05-14 16:30:26