wp_create_categories( string[] $categories, int $post_id = '' )

Create categories for the given post.

Parameters

$categories

(string[]) (Required) Array of category names to create.

$post_id

(int) (Optional) The post ID.

Default value: ''

Return

(int[]) Array of IDs of categories assigned to the given post.

Source

File: wp-admin/includes/taxonomy.php

function wp_create_categories( $categories, $post_id = '' ) {
	$cat_ids = array();
	foreach ( $categories as $category ) {
		$id = category_exists( $category );
		if ( $id ) {
			$cat_ids[] = $id;
		} else {
			$id = wp_create_category( $category );
			if ( $id ) {
				$cat_ids[] = $id;
			}
		}
	}

	if ( $post_id ) {
		wp_set_post_categories( $post_id, $cat_ids );
	}

	return $cat_ids;
}

Changelog

Version Description
2.0.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_create_categories