web-dev-qa-db-ja.com

親用語だけを入手するにはどうすればよいですか。

カスタムの分類法またはカテゴリから親用語のみを取得する方法はありますか?

18
Mamaduka

はい、Michaelが指摘したように、呼び出し時にget_termsにparentパラメーターを渡すだけです。

WP 4.5以降、これが推奨される使用法です。

$myterms = get_terms( array( 'taxonomy' => 'taxonomy_name', 'parent' => 0 ) );

WP 4.5より前は、これがデフォルトの使用法でした。

$myterms = get_terms( 'taxonomy_name_here', array( 'parent' => 0 ) );

0の親値を持つすべての用語を返します。トップレベルの用語.

35
t31os
2
Michael

ウーコマースメールテンプレートの場合は、以下を使用します。

$terms = get_the_terms( $_product->id , 'product_cat');
    if($terms) {
        foreach( $terms as $term ) {
            $term = get_term_by("id", $term->parent, "product_cat");
            if ($term->parent > 0) {
                $term = get_term_by("id", $term->parent, "product_cat");
            }
            $cat_obj = get_term($term->term_id, 'product_cat');
            $cat_name = $cat_obj->name;
        }
    }
echo '<br />('. $cat_name . ')';
2
3243
 $archive_cats= get_terms( 'archivecat', 'orderby=count&hide_empty=0&parent=0' );
1
ashraf mohammed