Function Reference: geodir_imex_insert_term

Summary

Create new the post term.

Package

GeoDirectory

Parameters

$taxonomy
(string) (required) Post taxonomy.

Default: None
$term_data
(array) (required) {
Attributes of term data. @type string $name Term name. @type string $slug Term slug. @type string $description Term description. @type string $top_description Term top description. @type string $image Default Term image. @type string $icon Default Term icon. @type string $taxonomy Term taxonomy. @type int $parent Term parent ID. }.

Default: None

Return Values

(int|bool)
  • Term id when success, false when fail.

Change Log

Since: 1.4.6

Source File

geodir_imex_insert_term() is located in geodirectory-admin/admin_functions.php [Line: 4929]

Source Code

function geodir_imex_insert_term( $taxonomy, $term_data ) {
	if ( empty( $taxonomy ) || empty( $term_data ) ) {
		return false;
	}
	
	$term = isset( $term_data['name'] ) && !empty( $term_data['name'] ) ? $term_data['name'] : '';
	$args = array();
	$args['description'] = isset( $term_data['description'] ) ? $term_data['description'] : '';
	$args['slug'] = isset( $term_data['slug'] ) ? $term_data['slug'] : '';
	$args['parent'] = isset( $term_data['parent'] ) ? (int)$term_data['parent'] : '';
	
	if ( ( !empty( $args['slug'] ) && term_exists( $args['slug'], $taxonomy ) ) || empty( $args['slug'] ) ) {
		$term_args = array_merge( $term_data, $args );
		$defaults = array( 'alias_of' => '', 'description' => '', 'parent' => 0, 'slug' => '');
		$term_args = wp_parse_args( $term_args, $defaults );
		$term_args = sanitize_term( $term_args, $taxonomy, 'db' );
		$args['slug'] = wp_unique_term_slug( $args['slug'], (object)$term_args );
	}
	
    if( !empty( $term ) ) {
		$result = wp_insert_term( $term, $taxonomy, $args );
        if( !is_wp_error( $result ) ) {
            return isset( $result['term_id'] ) ? $result['term_id'] : 0;
        }
    }
	
	return false;
}