Close

Web技術Tips

Homepage Tips Homepage Tips

ホームWeb技術Tipsカスタムタクソノミー一覧を任意の順番にソートする方法

SHARE

SHARE

WordPress 2014.03.25(公開)

カスタムタクソノミー一覧を任意の順番にソートする方法

get_terms関数を使ってカスタムタクソノミーのリストを表示させることがしばしばあると思います。
そのリストを任意の順番で並べ替えたい(ソート)ときは、カスタムタクソノミー設定時の「説明」に番号を振っていくことで実現することができます。

カスタムタクソノミー20140325

図のように東京の説明に000、神奈川に001等を設定し、任意の順番でソートをかけることができるようにできます。ただし次のコードでは動きません。

$terms = get_terms($taxonomy,
    array(
        'parent' => 0,
        'orderby' => 'description'
    )
);

ソートが効くようにするために、WordPressフォーラムにあるように次のようなコードをfunctions.phpに追加する必要があります。

function taxonomy_orderby_description( $orderby, $args ) {

    if ( $args['orderby'] == 'description' ) {
        $orderby = 'tt.description';
    }
    return $orderby;
}
add_filter( 'get_terms_orderby', 'taxonomy_orderby_description', 10, 2 );

カスタムタクソノミーの並べ替えプラグインもありますが、プラグインはあまり多用したくないという方には良い方法だと思います。

DOE(横浜)のニュースとブログ

News News

横浜のWeb制作会社DOEはホームページ制作に関連するWeb技術、Webデザイン、SEO対策情報など人気&おすすめ記事を随時公開中です。
尚、Xでは現場の声がリアルタイム配信中です。良かったらShareして繋がってください。