Поддержка Проблемы и решения MAIN QUERY для отображения posts с определенным meta key

  • Есть posts.

    У каждого post есть meta key favorite = array(ID, ID, ID3…) — массив ID юзеров, которые занесли этот post в избранное себе.

    Надо отображать для каждого юзера страницу со списком избранных posts ЧЕРЕЗ MAIN QUERY

    Просто сделать get_posts я и так прекрасно могу на странице, но этого не надо. Надо именно через main query, чтобы разбивка на страницы нативным образом работала

    Как?

    template author я уже занял — отображаю в нем список posts, созданных %author_name%

Просмотр 11 ответов — с 1 по 11 (всего 11)
  • создайте рубрику «Избранное», а потом фильтром pre_get_posts фильтруйте вывод этой рубрики по вашим условиям.

    Рубрики у меня тоже все заняты! Я и по рубрикам вывожу posts, и по авторам.

    Как?

    Доп поле для юзера, в котором перечислены нужные ID?

    каждая страница сайта должна содержать уникальный контент. то бишь, если user/tratata/ выводит список posts, созданных юзером tratata, то эта же страница не может выводить избранные посты юзера tratata, созданные другими юзерами.

    я запланировал список избранных просто как /favorite/, то бишь она одна и работать должна только для текущего юзера. но как сделать, чтобы на этой одной странице срабатывала main query — это головоломка.

    • Ответ изменён 5 лет, 9 месяцев назад пользователем eugene1979.
    • Ответ изменён 5 лет, 9 месяцев назад пользователем eugene1979.

    то бишь, если user/tratata/ выводит список posts, созданных юзером tratata, то эта же страница не может выводить избранные посты юзера tratata, созданные другими юзерами.

    Ну это вообще стандартная выборка в шаблоне юзера практически любой темы. (никаких «избранных» дефолтно нет)

    Мне надо, чтобы избранное current user отображалось в /favorites/ через main query.
    Выборок в author template мне не надо (вы не поняли).

    • Ответ изменён 5 лет, 9 месяцев назад пользователем eugene1979.

    избранное current user

    Откуда возьмётся «избранное»?
    Правильно, есть 2 способа — указывать их у юзера или присваивать постам доп. юзеров. Первый ИМХО правильнее. тк это юзеровские частные данные.
    Но хочется второй — нет проблем — доп поля с ID юзеров.

    Создайте страницу favorite, добавляйте новые параметры запроса https://wp-kama.ru/function/add_rewrite_rule, потом можно подставлять к урл логин или ид и менять ввод


    Лучше мне кажется держать id избранных постов у пользователя, чем наоборот.

    Создайте страницу favorite, добавляйте новые параметры запроса https://wp-kama.ru/function/add_rewrite_rule, потом можно подставлять к урл логин или ид и менять ввод
    =======
    Да, до меня это буквально минут 10 назад дошло, еще до того, как вы написали. Тем не менее, все равно спасибо вам.
    Я только переиграл немножко, решил, что не /favorite/ буду делать тогда уж,
    а /user/tratata/?mode=favorite и обработку, соответственно, в template author — удобнее получается.
    Повторюсь, тем не менее — еще раз спасибо.

    Рубрики у меня тоже все заняты! Я и по рубрикам вывожу posts, и по авторам.

    что за ерунду вы говорите?
    я вам сказал — создайте отдельную рубрику «Избранное».
    а фильтровать вывод отдельной рубрики проще простого.

    я вам сказал — создайте отдельную рубрику «Избранное».
    а фильтровать вывод отдельной рубрики проще простого.
    =====
    Я понял. Спасибо.

Просмотр 11 ответов — с 1 по 11 (всего 11)
  • Тема «MAIN QUERY для отображения posts с определенным meta key» закрыта для новых ответов.