如何在发布时将CPT帖子自动分配到自定义分类中的类别?

时间:2016-08-09 作者:gulliver

当帖子保存/更新时,我正在使用下面的代码自动将“item”的CPT分配给类别“magazine”。

function assign_item_category_automatically($post_ID) {

    global $wpdb;

    if(!wp_is_post_revision($post_ID)) {
        wp_set_object_terms( $post_ID, \'magazine\', \'category\');
    }
}

add_action(\'publish_item\', \'assign_item_category_automatically\');
它工作正常,但它指定的类别是正常类别。。。尽管我想将其分配给定制分类法中的一个类别,仅用于“item”CPT,但我不希望普通类别可用于CPT帖子,也不希望定制分类法可用于普通帖子。

我不知道如何修改这个来做我想要的。

1 个回复
SO网友:Krzysztof Grabania

Documentation 说,wp_set_object_terms 接受4个参数:$object_id, $terms, $taxonomy, $append

  • object_id - 帖子、页面、附件或帖子表中任何内容的IDterms - 段塞或id或术语taxonomy - 分类法slug-在您的情况下,将是您自定义的分类法slugappend - 是删除分配给对象的所有现有术语,还是在末尾追加新术语用法:wp_set_object_terms($post_id, \'magazine\', \'your_taxonomy_slug\', true);