Функция get_tags () неправильно сортирует - PullRequest
3 голосов
/ 08 января 2011

Несмотря на большое количество документации и примеров в Интернете, я не могу заставить эту простую функцию работать должным образом.Я понятия не имею, что я делаю неправильно, но, тем не менее, это не работает должным образом.Может кто-нибудь определить, что мне здесь не хватает?

Я ищу создать собственное облако тегов, поэтому я не использую wp_tag_cloud ().следующий вывод:

 - Black Box (3 related page)
 - Waste (2 related page)
 - Recycling (2 related page) 
 - Garbage (1 related page) 
 - Cheese (1 related page)
 - Blue Box (1 related page) 
 - Test (1 related page)

Как видите, они отсортированы по COUNT, а не по имени.Понятия не имею почему.Мои аргументы вроде бы в порядке.мысли?

Ответы [ 2 ]

1 голос
/ 25 апреля 2017

Этот вопрос старый, но, возможно, это поможет кому-то, все еще ищущему ответ.

function sortOrder($a, $b) {
    if($a->name == $b->name){ return 0 ; }
    return ($a->name < $b->name) ? -1 : 1;
}

$tags = get_tags();
usort($tags, 'sortOrder');

    foreach($tags as $tag) {
        echo "<li><a href=\""
                    .get_tag_link($tag->term_id)."\">"
                    .ucwords($tag->name)
                    ."</a> ($tag->count related page)</li>";    
    }
0 голосов
/ 30 июня 2011

Я нашел этот вопрос, пытаясь исправить подобную проблему ... оказывается, в моем коде просто была небольшая опечатка ('orderby' вместо 'orderby').Но я нашел кое-что, что могло бы вам помочь.

Кажется, что это иногда вызвано тем, что плагины мешают вашему запросу.Попробуйте отключить плагины, чтобы увидеть, решит ли это проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...