WordPress插入分类函数:wp_insert_category

WordPress函数wp_insert_category用于插入分类,wp_create_category()函数事实上是使用了wp_insert_category()函数来创建一个分类,只是在创建之前先检查同名称分类是否存在。

wp_insert_category()函数可以传递分类别名、分类描述等,而wp_create_category()函数由于不能传递分类别名,不适合用于创建中文名称的分类。

wp_insert_category( array $catarr, bool $wp_error = false )

函数参数

$catarr

数组

wp_insert_category()函数$catarr参数默认值如下:

$cat_defaults = array(
	'cat_ID'               => 0,
	'taxonomy'             => 'category',
	'cat_name'             => '',
	'category_description' => '',
	'category_nicename'    => '',
	'category_parent'      => '',
);

可用值如下:

cat_ID

整数,默认值:0

非零值将更新现有的分类。

taxonomy

字符串,默认值:category

分类法的名称

cat_name

字符串

分类的名称

category_description

字符串

分类的描述

category_nicename

字符串

分类的别名

category_parent

整数

父分类的ID

$wp_error

布尔值,默认值:false

是否返回错误信息

函数返回值

插入分类成功返回分类的ID,如果插入失败,当$wp_error为false时返回0,否则返回错误信息。获取错误信息示例:

$cat_ID = wp_insert_category(array(
	'cat_name' => '开发',
	'category_description' => '分类描述',
	'category_nicename' => 'develop',
));
if(is_wp_error($cat_ID)) {
	$error_string = $cat_ID->get_error_message();
	echo '<div id="message" class="error"><p>' . $error_string . '</p></div>';
} else {
	echo $cat_ID;
}

函数使用示例

在插件中,可以直接使用wp_insert_category()函数,在主题中,需要先引入taxonomy.php

if(!function_exists('wp_insert_category')) {
	require_once(ABSPATH . 'wp-admin/includes/taxonomy.php');
}
$cat_ID = wp_insert_category(array(
	'cat_name' => '开发',
	'category_description' => '分类描述',
	'category_nicename' => 'develop',
));

扩展阅读

wp_insert_category()函数位于:wp-admin/includes/taxonomy.php

相关函数:

阿里云