Intereting Posts
Добавление комментариев к моей теме wp_list_comments отображает неправильно вложенные <ul> как я могу легко очистить ошибку «заголовок неверно» при попытке переподключения социальных учетных записей в jetpack Какой крючок используется для отображения admin_bar на лицевой стороне? Как добавить мета-поля (поля повторителя) из WordPress назад? Регистрация пользователя на субсайте в многоузловой конфигурации Вытянуть комментарии для pre_comment_on_post из comment_post_ID Локализовать строки для перевода удалить постоянную ссылку «передняя часть» для пользовательского типа сообщения Отображать год и месяц из пользовательского поля + калькулятор возраста Показать элементы портфеля в шаблоне – как? Планируемые поля повторителя ACF Custom Post Type Plugin не загружает шаблон категории и загружает 404 вместо Подключить тип сообщения как пользовательскую таксономию к пользователям и другой пользовательский тип сообщения в панели администратора Возможно ли установить лимит редактирования типа публикации в файлах темы?

Могу ли я использовать get_adjacent_post для определенных категорий?

Я хочу получить следующие и предыдущие сообщения, основанные на определенных клонах категории. Например, некоторые должности могут иметь категорию «спорт», а другая – «техническая».

Я надеялся подключить категорию slug в get_adjacent_post но не кажется, что он работает. Похоже, он просто хочет использовать «категорию» слипа или, может быть, обычную таксономию, а не пули в таксономии «категории».

Вот пример того, что я пытался сделать:

 $adj = get_adjacent_post(true, '', true, 'sports'); 

Solutions Collecting From Web of "Могу ли я использовать get_adjacent_post для определенных категорий?"

То, что вы называете «слизнями» здесь, более справедливо называют терминами . Это немного путает с местными таксономиями, потому что оно превращается в тавтологию: отдельные категории – это термины таксономии категории.

Таким образом, sports и tech – это терминология таксономии родной category .

Аргументы функции действуют на уровне таксономии , а не на уровне термина . То есть вам нужно предоставить таксономический слизень, такой как category , и все термины в этой таксономии будут рассматриваться для соответствия.

С точки зрения аргументов, один из вариантов здесь – использовать аргумент $excluded_terms чтобы исключить все, кроме одного слова, которое вы хотите.

Кроме того, это довольно низкоуровневая функция, которая напрямую генерирует множество пользовательских SQL. Есть множество фильтров для манипулирования этой частью процесса, например get_{$adjacent}_post_join и get_{$adjacent}_post_where , но это не то, что я бы назвал легко регулируемым.

Согласно документации для get_adjacent_post() , параметры:

$in_same_term (bool) (необязательно) Должен ли пост быть в том же таксономии.
Значение по умолчанию: false

$excluded_terms (массив | строка) (необязательно). Список идентификаторов исключенного члена, разделенных запятыми.
Значение по умолчанию: ''

$previous (bool) (Необязательно) Извлечение предыдущего сообщения.
Значение по умолчанию: true

$taxonomy (строка) (необязательно) Таксономия, если $in_same_term true .
Значение по умолчанию: 'category'

Параметр $taxonomy – это то, что вы можете указать, какая таксономия (категория, тег или пользовательская таксономия) вы хотите использовать для выбора смежного поста.

Таким образом, нет, похоже, вы не можете указать термин таксономии (например, sports или tech в своем вопросе).