Cómo insertar categoría y subcategoría usando la función 'wp_insert_post'

28 ago 2013, 15:24:58
Vistas: 17.7K
Votos: 2

¿Cómo sería el array para insertar una categoría y subcategoría en un post?

Gracias.

3
Comentarios

¿Por qué el voto negativo?

Marcelo Noronha Marcelo Noronha
28 ago 2013 15:33:37

Se espera que hayas investigado el problema e intentado resolverlo antes de publicar una pregunta. Cualquiera que sea la verdad, esta pregunta da la impresión de que se le dedicó muy poco pensamiento o investigación. Incluso el sistema automatizado de "publicaciones de baja calidad" la marcó.

s_ha_dum s_ha_dum
28 ago 2013 15:50:58

Ok, leeré el enlace

Marcelo Noronha Marcelo Noronha
28 ago 2013 16:09:33
Todas las respuestas a la pregunta 2
2

La descripción del argumento en la entrada del Codex para wp_insert_post() tiene exactamente lo que necesitas (reformateado).

'post_category'  => [ array(<category id>, <...>) ] 
//post_category ya no existe, prueba wp_set_post_terms() para establecer las categorías de un post

Así que, según el Codex. Usa wp_set_post_terms().

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

Para taxonomías personalizadas:

'tax_input' => array( 
  'taxonomy_name' => array( 
    'term', 
    'term2', 
    'term3' 
  ) 
); // soporte para taxonomías personalizadas. 

Solo cambia el nombre de la taxonomía por el que desees y reemplaza los marcadores de posición term con los slugs de categoría que quieras.

El Codex implica débilmente que ya no puedes establecer la categoría mediante wp_insert_post(). Sin embargo, aunque no lo he probado, no me sorprendería si ese argumento tax_input también funciona para la taxonomía category, así:

'tax_input' => array( 
  'category' => array( 
    'a', 
    'b', 
    'c' 
  ) 
);
28 ago 2013 15:48:10
Comentarios

Estoy confundido. ¿Estás diciendo que post_category en wp_insert_post funciona o no?

Flimm Flimm
29 ago 2019 18:43:18

cuando usas post_category solo necesitas enviar un array de IDs de categorías de post.

Robbiegod Robbiegod
27 jul 2020 18:06:37
0

Funcionó para mí con wp_set_object_terms()

31 mar 2017 12:08:40