按插件更改分类术语(Wp_UPDATE_TERM)

时间:2013-04-28 作者:Roc

我试图实现的是使用其slug而不是$term\\u id更新分类术语名称

Wordpress通过以下方式实现:

<?php wp_update_term( $term_id, $taxonomy, $args )  ?>
是否可以通过slug来实现这一点?

<?php wp_update_term( get_term_by( \'slug\', $value, $taxonomy, $output, $filter ) )  ?>
我在这方面已经坚持了一段时间,但没有成功。

默认分类术语由插件创建。我正在创建一个辅助插件来更改由“父”插件创建的分类术语。

谢谢Roc。

---编辑---应该提到,我无法按id更新术语,因为分类id会根据插件激活的时间以及在创建之前是否存在其他标记而变化。

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

正如你在问题中暗示的,你可以使用get_term_by() 返回包含术语id的对象或数组,然后使用它更新该术语。像这样的方法应该会奏效:

$your_term = get_term_by( \'slug\', \'your_slug\', \'your_taxonomy\' );

if ( false !== $your_term ) {
    wp_update_term( $your_term->term_id, \'your_taxonomy\', $args );
}
参考文献:

http://codex.wordpress.org/Function_Reference/get_term_by

http://codex.wordpress.org/Function_Reference/wp_update_term

结束

相关推荐

仅从wp_GET_POST_TERMS获取父术语

我有一个自定义的帖子类型,它设置了层次分类法。例如,我的帖子类型“project”的类别为 A A.1 B C 我正在尝试将分类显示为上的类<li> 每个帖子的项目,但我只想显示顶级家长。对于我正在查看的帖子,它被分类为A.1和C,但我想返回A和C。我正在使用\'parent\' => 0 然而,在args中,它给了我A.1和C。我也尝试使用\'hide_empty\' => 0 但这似乎没有帮助。这是我的代码: function pro