web-dev-qa-db-ja.com

スラグによる分類用語の変更(wp_update_term)

私が達成しようとしているのは、$ term_idではなくスラッグを使用して分類用語名を更新することです。

Wordpressはこれを次のようにします。

<?php wp_update_term( $term_id, $taxonomy, $args )  ?>

代わりにスラグを介してこれを行うことは可能ですか?

<?php wp_update_term( get_term_by( 'slug', $value, $taxonomy, $output, $filter ) )  ?>

私はしばらくこれにとどまっています - しかし成功しませんでした。

デフォルトの分類用語はプラグインによって作成されます。 'parent'プラグインによって作成された分類用語を変更するためのセカンダリプラグインを作成しています。

ありがとうございます。ロック.

---編集---分類IDはプラグインが有効になったときや、作成する前に他のタグが存在する場合に基づいて変わるため、IDで用語を更新することはできません。

1
Roc

あなたがあなたの質問で示唆したように、あなたはその用語のidを含むオブジェクトまたは配列を返すためにget_term_by()を使うことができ、それからその用語を更新するためにそれを使うことができます。このようなものでうまくいくはずです。

$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

1
BigBagel