在wp_INSERT_TERM之后获取类别ID

时间:2014-09-09 作者:kat

我正在使用wp_insert_term 要创建类别,在创建类别后,我想获取其ID:

$cat_id = wp_insert_term($name, \'category\', array(\'slug\' => $slug) );

...但是当我尝试打印时$cat_id 我明白了Array 而不是实际的ID。我想我必须说明我需要数组的哪一部分,但我真的不知道ID的变量是什么?

2 个回复
最合适的回答,由SO网友:Chris Morris 整理而成

它应该是term_id, 所以echo 出来$cat_id[\'term_id\'] 你应该得到新的术语ID。

SO网友:birgire

根据Codex:

返回值(数组| WP\\u错误)

术语ID和术语分类ID。

示例:

array( \'term_id\'=>12,\'term_taxonomy_id\'=>34)
因此,请尝试以下示例:

$cid = wp_insert_term( $name, \'category\', array( \'slug\' => $slug ) );

if ( ! is_wp_error( $cid ) )
{
    // Get term_id, set default as 0 if not set
    $cat_id = isset( $cid[\'term_id\'] ) ? $cid[\'term_id\'] : 0;
    // ... etc ...
}
else
{
     // Trouble in Paradise:
     echo $cid->get_error_message();
}

结束

相关推荐

Get_the_Terms仅返回上一学期

在我的自定义帖子类型(portfolio\\u pt)中,我有一些类似的层次类别结构:ParentCat |-child |-someItem ParentCat2 |-cild ... 当我尝试通过get\\u获取所有术语的列表时,“someItem”post的\\u terms函数此函数只返回最后一个类别(“子类别”而不返回“父类别”),例如:global $post; $terms = get_the_terms( $post->