like-a-boss
@like-a-boss
признайся, тебя тянет на код мужика

WordPress. Как вывести посты, принадлежащие 2-ум разным таксономиям?

Уважаемые знатоки, есть кастомный тип постов, представляет из себя текст песни, принадлежащий двум кастомным таксономиям Artist и Album.

Задача состоит в том, чтобы вывести на странице taxonomy-artist.php все посты (в виде ссылок разумеется), принадлежащие Artist и разложенные по Album.

Иными словами, на странице должны быть название Альбома и принадлежащие ему посты текстов песен:

Artist Такой-то

Album 1:
- Текст песни 1
- Текст песни 2
..
- Текст песни 10

...

Album 10:
- Текст песни 1
- Текст песни 2
..
- Текст песни 10

Не нашёл подходящей функции. Как реализовать?
  • Вопрос задан
  • 2902 просмотра
Решения вопроса 1
@ankaid
Я бы заюзал плагин "Posts2Posts" или "Advanced Custom Fields" (зависит от уровня нужной гибкости).
Сделал бы 3 типа данных:
- песня (или текст песни - как вам лучше представляется)
- альбом
- артист

Соединил бы эти 3 типа данных нужными связи (опять же от уровня гибкости зависит).
А дальше в шаблоне single-artist.php
- запрашиваем все альбомы артиста
- бежим по ним циклом
- в котором запрашиваем для каждого альбома все привязанные тексты
- бежим циклом по полученным текстам и выводим ссылки на них

Таксономии в WP получаются такие негибкие для задач подобных вашей... Единственный минус в моём варианте это возможно меньшая производительность всех этих запросов и циклов. Зато прозрачная структура.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
встроенными методами это можно сделать, но некрасиво и несколькими запросами. Лучше это реализовать сразу на mysql через wpdb
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы