按字母顺序对分类术语进行排序

时间:2017-05-04 作者:user1374796

我有以下疑问:

<?php 
$args = array(
    \'hide_empty\' => false, 
    \'orderby\' => \'title\',
    \'order\' => \'DESC\' 
);
$terms = get_terms( \'projets-location\', $args );
 if ( !empty( $terms ) && !is_wp_error( $terms ) ){
     foreach ( $terms as $term ) { ?>   

        <h5 id="<?php echo $term->slug; ?>" class="filter-menu-item" data-filter=".<?php echo $term->slug; ?>">
            <strong><?php echo $term->name; ?></strong>
        </h5>

    <?php }
 } ?>   
其中显示了projets-location 分类法,我添加了orderbyorder 但它们仍然没有按字母顺序显示,我是在愚弄她还是我出了什么问题?如有任何建议,将不胜感激!

4 个回复
SO网友:s t

自4.5.0以来,应通过$args数组中的“taxonomy”参数传递分类法:

$terms = get_terms( array(
    \'taxonomy\' => \'projets-location\',
    \'orderby\' => \'name\',
    \'order\' => \'DESC\' 
) );

SO网友:Mervan Agency

根据WordPress Codexget_terms 在此链接上https://developer.wordpress.org/reference/functions/get_terms/, 中接受以下术语字段order_by 论点\'name\', \'slug\', \'term_group\', \'term_id\', \'id\', \'description\' 您正在使用title 它不在accepted terms字段中,因此这可能是问题所在。

SO网友:Vincent Decaux

我没有成功地使用orderby 参数,所以我只使用了一个排序函数::

// order by name ASC - change > to < to order by DESC
function sortByName($a, $b) {
    return $a->name > $b->name;
}

$terms = get_terms( \'projets-location\', $args );
usort($subterms, \'sortByName\');

foreach ( $terms as $term ) {
   ....

SO网友:Marcos Nakamine

Try with wpdb

<?php
global $wpdb;
$terms = $wpdb->get_results( "
    SELECT
        t.name,
        t.slug
    FROM
        {$wpdb->prefix}term_taxonomy AS tt
    INNER JOIN
        {$wpdb->prefix}terms AS t
        ON t.term_id = tt.term_id
    WHERE
        tt.taxonomy = \'projets-location\'
    ORDER BY
        t.name DESC
" );

if ( !empty( $terms ) && !is_wp_error( $terms ) ){
    foreach ( $terms as $term ) { ?>

        <h5 id="<?php echo $term->slug; ?>" class="filter-menu-item" data-filter=".<?php echo $term->slug; ?>">
            <strong><?php echo $term->name; ?></strong>
        </h5>

    <?php }
} ?>

相关推荐

如何控制根据Taxonomy术语显示什么模板?

我正在建立一个商业目录,并将给出一些背景,然后在最后有2个问题。The development URL is: http://svcta.lainternet.biz/The website I am rebuilding is: https://www.visitsimivalley.com/当前网站要求每个分类法类型具有唯一的业务概要文件。例如,如果您是一家酒店,并且您也有会议室和婚礼场地,那么您最终会得到3个列表,一个用于酒店,一个用于会议,一个用于婚礼。我希望有一个主配置文件,其中包含我们将显示的