Категория __not_in - В любом случае использовать имя категории вместо идентификатора?

wordpress.stackexchange https://wordpress.stackexchange.com/questions/7737

  •  16-10-2019
  •  | 
  •  

Вопрос

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

Это возможно?

Это было полезно?

Решение

Вы можете использовать Список категорий сообщений (Отказ от ответственности: я автор книги категорий списков) или вы можете кодировать это самостоятельно:

$category_id = get_cat_ID($category_name);

Таким образом, вы можете получить удостоверение личности и исключить его из петли со знаком минус. Пример:

get_posts(cat=-1);

Другие советы

Нет.

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

Вы можете построить свой собственный аналог, используя posts_where Фильтр для изменения SQL ... но я думаю, что если вам не нужно много категорий, чтобы исключить, было бы более практичным просто преобразовать имена в идентификаторы перед запросом.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с wordpress.stackexchange
scroll top