@Denis9999

Отображение постов с определенной таксономией в Wordpress?

Сделал в wordpress полльзовательскую таксономию. Теперь по ссылке site.com/taxonomy/term/ Открываются посты принадлежащие к этой таксономии относящиеся к соответствующей term(slug). Но по ссылке site.com/taxonomy открывается страница с 404 ошибкой.

Нужно сделать чтобы по этому url отображались все посты с этой таксономией, и не важно какой term(slug) у них.
Можно ли это сделать при регистрации таксономии или нужно прописывать свои правила обработки url, создавать свой файл, кастомизировать Цикл отображения постов и т. д. ?
  • Вопрос задан
  • 268 просмотров
Пригласить эксперта
Ответы на вопрос 2
trampick
@trampick
Веб-разработчик
я бы создал главную родительскую категорию новой таксономии. Остальные категории были бы дочерние этой категории.
-По урлу site.com/taxonomy я бы через add_rewrite_rule() сделал вывод главной категории(якобы такую подмену).
-Минус такого подхода что по двум урлам site.com/taxonomy и site.com/taxonomy/mainCat выводится один и тот же контент. Плюс есть момент, что в хлебных крошках(если использовать плагин) будут отображаться на то и на другое ссылки.

!Другой подход через add_rewrite_rule() site.com/taxonomy сделать подмену на определенную страницу. В шаблоне этой страницы сделать вывод всех постов через wp_query.
Ответ написан
Комментировать
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
WordPress не создает такой страницы по умолчанию, я уже не помню предысторию (лень копаться в старых тикетах на Trac), но суть в том, что такой фичи нету. Так что 404 - вполне ожидаемый результат, так и должно быть.

Иван Козлов в принципе в нужном направлении отправляет. Я бы делал rewrite_rule и отправлял на кастомный обработчик, который бы в свою очередь корректно устанавливал необходимые параметры глобального $wp_query, выдавал страницу как архив и модифицировал бы сразу основной запрос, вместо new WP_Query в шаблоне. Таким образом у вас и пагинация будет работать, и все остальные плюшки.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы