How would be the array, to insert a post category and subcategory?
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It only takes a minute to sign up.Sign up to join this community
The argument description in the Codex entry for
wp_insert_post() has exactly what you need (reformatted).
'post_category' => [ array(<category id>, <...>) ] //post_category no longer exists, try wp_set_post_terms() for setting a post's categories
So, per the Codex. Use
wp_set_post_terms( $post_id, array( 1, 2, 3), 'category', true );
For custom taxonomies:
'tax_input' => array( 'taxonomy_name' => array( 'term', 'term2', 'term3' ) ); // support for custom taxonomies.
Just change the taxonomy name to the one you want and replace the
term placeholders with the category slugs you want.
The Codex weakly implies that you can no longer set the category via
wp_insert_post(). However, while I haven't tested it I would not be surprised if that
tax_input argument also works for the
category taxonomy, like so:
'tax_input' => array( 'category' => array( 'a', 'b', 'c' ) );
Worked for me with wp_set_object_terms()