web-dev-qa-db-ja.com

アルファベット順でget_term_childrenの出力方法

どのように私はアルファベット順にこれの出力を得るのですか

<?php
    $termID = 5;
    $taxonomyName = 'area';
    $termchildren = get_term_children( $termID, $taxonomyName );

    echo '<ul>';
    foreach ($termchildren as $child) {
        $term = get_term_by( 'id', $child, $taxonomyName );
        echo '<li><a href="' . get_term_link( $term->name, $taxonomyName ) . '">' . $term->name . '</a></li>';
    }
    echo '</ul>';
?>
5
ide79

get_term_children()は用語IDのみを出力します。後でget_term_by()を使用して各用語の詳細を取得します。 get_terms() を引数child_ofとともに使用して、これらのクエリを1つにまとめることができます。

get_terms( $taxonomyName, array( 'child_of' => $termID ) );

デフォルトではこれは名前でソートします。しかし、child_of引数がソートを元に戻すことは可能です。その場合はusort()を使って再度ソートすることができます。 これに関連する問題に対する回答 の例を参照してください。

13
Jan Fabry