Intereting Posts
Опыт компиляции WordPress с использованием хип-хопа? Редактирование страницы продукта Woocommerce wp_signon () не требует аутентификации пользователя Я использую то же имя слива для категории и страницы Показать домашнюю страницу (только) Счетчик посещений Ищете хороший способ включить PHP-код в сообщениях, но используя специальную разметку include, а не прямой php-код Пагинация в плагине с пользовательским типом сообщения Пользовательский тип сообщения «иерархическая» Справка! Отправка пользовательских данных с помощью Media Frame Model Используйте файл шаблона для определенного URL-адреса без создания страницы условие только в том случае, если это архив для типа сообщения по умолчанию Как добавить класс, если нет боковой панели? Проблемы безопасности с сайтами WP Разрешить настраиваемое имя типа сообщения против конфликта константы страницы (тот же самый пул) Задача the_permalink

Могу ли я установить post_type query_var при нажатии ссылки?

У меня есть 2 пользовательских типа сообщений, которые используют одни и те же таксономии. Я хотел бы иметь возможность показывать все записи в таксономии (здесь нет проблем), а затем только каждый из типов сообщений. Но я хотел бы сделать это, не создавая беспорядок пользовательских страниц с использованием шаблона.

Могу ли я настроить функцию для изменения post_type query_var при нажатии ссылки? SO, если бы у меня был набор навигационных ссылок в левой боковой панели, набор для типа «конструктор» поставил post_type query_var в «designer». То же самое должно было бы произойти для навигационных ссылок типа «бутик».

Я думаю, мне может понадобиться использовать javascript, но я не уверен. Это возможно? Я не специалист по средствам, но я считаю, что МОЖЕТ быть возможным,

Thanx заранее!

Solutions Collecting From Web of "Могу ли я установить post_type query_var при нажатии ссылки?"

Вы можете использовать pre_get_posts фильтра pre_get_posts для установки типа сообщения, переданного пользователем:

вставьте этот код в файл functions.php вашей темы:

 function user_set_type( $query ) { //only on your taxonomy page if ( $query->is_tax('YOUR_CUSTOM_TAXONOMY') ) { //and only if the guesst has selected a type if (isset($_GET['UTYPE']) && !empty($_GET['UTYPE'])){ $query->set( 'post_type', $_GET['UTYPE'] ); } } return $query; } add_filter( 'pre_get_posts', 'user_set_type' ); 

Измените YOUR_CUSTOM_TAXONOMY на имя вашей таксономии, а затем на вашей странице таксономии или виджетах все, что вам нужно сделать, это создать ссылки с post_type в качестве параметров в них, например:

 <a href="<?php echo get_permalink() . '?UTYPE=designer"; ?>">Designers</a> - <a href="<?php echo get_permalink() . '?UTYPE=boutique" ?>">Boutiques</a>