Add tag to post api wordpress

时间:2013-01-21 作者:Prakash Raman

我一直在谷歌上搜索,但找不到“将标签添加到帖子”api/codex。有人知道这是什么吗?此外,“从帖子中删除标签”。

谢谢

3 个回复
最合适的回答,由SO网友:webaware 整理而成

您将找到WordPress API的一个良好块的索引here on codex. 您想要的功能是wp_set_post_tags(), 但请按照该页面的链接访问相关功能。

编辑:根据下面的评论,这应该从帖子中删除标记

// $post is your post object, e.g. from: global $post;
// $target is tag you want to remove

// get an array of current tags on post
$tags = wp_get_post_tags($post->ID, array(\'fields\' => \'names\'));

// remove selected tag from array
$key = array_search($target, $tags);
if ($key !== false) {
    unset($tags[$key]);
}

// set new list of tags, without $target
wp_set_post_tags($post->ID, $tags, false);

SO网友:Manny Fleurmond

您可以使用wp_insert_term() 插入新标记的函数:

wp_insert_term( \'post_tag\', \'happy\' );
然后在创建术语后,您可以使用wp_set_post_terms() 功能,如:

wp_set_post_terms( $post_id, \'happy\', \'post_tag\', true);

SO网友:Oleg Butuzov

谷歌知道这一点。

如果要将类别添加到ID为42的帖子中,请执行以下操作:

$cat_ids = array( 6,8 );
    //to make sure the terms IDs is integers:
    //$cat_ids = array_map(\'intval\', $cat_ids);
    //$cat_ids = array_unique( $cat_ids );
wp_set_object_terms( \'42\', $cat_ids, \'category\' );
如果要清除/删除ID为42的帖子中的所有类别:

wp_set_object_terms( \'42\', NULL, \'category\' );
了解更多信息wp_set_object_terms

结束

相关推荐

Get all taxonomy posts by id

我的代码应该返回与分类id相关的所有帖子,但它返回最后5篇帖子。<?php $leaderships = new WP_Query(array( \'post_type\' => \'posttype\', \'posts_per_page\' => 11, \'tax_query\' => array( array( \'taxonomy\' =&