Как добавить категорию и подкатегорию с помощью функции 'wp_insert_post'?

28 авг. 2013 г., 15:24:58
Просмотры: 17.7K
Голосов: 2

Как должен выглядеть массив для добавления категории и подкатегории записи?

Спасибо.

3
Комментарии

Почему минус?

Marcelo Noronha Marcelo Noronha
28 авг. 2013 г. 15:33:37

От вас ожидается, что вы изучите проблему и попытаетесь решить её самостоятельно перед тем, как задавать вопрос. Какими бы ни были реальные обстоятельства, этот вопрос создаёт впечатление, что в него вложено очень мало усилий и исследований. Даже автоматическая система определения "низкокачественных постов" отметила его.

s_ha_dum s_ha_dum
28 авг. 2013 г. 15:50:58

Хорошо, я прочитаю ссылку

Marcelo Noronha Marcelo Noronha
28 авг. 2013 г. 16:09:33
Все ответы на вопрос 2
2

Описание аргумента в записи Кодекса для wp_insert_post() содержит именно то, что вам нужно (в переформатированном виде).

'post_category'  => [ array(<category id>, <...>) ] 
//post_category больше не существует, попробуйте wp_set_post_terms() для установки категорий записи

Таким образом, согласно Кодексу, используйте wp_set_post_terms().

wp_set_post_terms( $post_id, array( 1, 2, 3), 'category', true );

Для пользовательских таксономий:

'tax_input' => array( 
  'taxonomy_name' => array( 
    'term', 
    'term2', 
    'term3' 
  ) 
); // поддержка пользовательских таксономий. 

Просто замените имя таксономии на нужное и подставьте слаги категорий вместо плейсхолдеров term.

Кодекс слабо намекает, что вы больше не можете устанавливать категорию через wp_insert_post(). Однако, хотя я не проверял, я не удивлюсь, если аргумент tax_input также работает для таксономии category, например:

'tax_input' => array( 
  'category' => array( 
    'a', 
    'b', 
    'c' 
  ) 
);
28 авг. 2013 г. 15:48:10
Комментарии

Я запутался. Вы говорите, что post_category в wp_insert_post работает или нет?

Flimm Flimm
29 авг. 2019 г. 18:43:18

когда вы используете post_category, вам просто нужно передать массив ID категорий записи.

Robbiegod Robbiegod
27 июл. 2020 г. 18:06:37
0

Сработало у меня с wp_set_object_terms()

31 мар. 2017 г. 12:08:40