Список категорий с произвольной сортировкой

Значит, есть у меня страницы где выводятся дочерние категории какой-либо категории и 4 последних поста из этой дочерней категории. Не суть.

Как сделать упорядоченный список категорий? Мой код, переделанный с кода agenius, обитателя сего сайта.

$ctax = 'category';
$ptype = 'post'; 
$posts_per_page = 4;
$category_id = get_category_by_slug('russian-category')->term_id;
$categories = get_categories( array ( 'taxonomy' => $ctax, 'parent' => $category_id ) );

foreach ( $categories as $cat )
{  
        $catname = $cat->name;
        $catid = $cat->term_id;
        echo '
'; echo "

$catname

"; query_posts( array( 'post_type' => $ptype, $ctax => $catname, 'posts_per_page' => $posts_per_page, 'order'=>'DESC', 'category__in'=>$catid ) ); if ( have_posts() ) : while ( have_posts() ) : the_post(); category_template(); endwhile; endif; echo "


"; wp_reset_query(); }

Как можно реализовать произвольный порядок вывода? Я долго пробовал с произвольными полями для категорий, но кажется, пока они работают не из ядра – это ерунда выходит.
У меня есть два варианта реализации, но они оба требуют влезания в кода.
1) Забить $categories категориями в нужном порядке.
2) Выводить всё это дело вообще без foreach’а, а просто запросом к определенной категории выводом 4 поста.
Второй способ ещё более деревянная реализация первого способа. И если первому ещё как-то можно обучить, то второй даже показывать не стоит. Тем не менее, это ужасно. У кого какие идеи есть на этот счет?

4 Комментарии

  1. Спасибо. Я понял суть, но мне нужен произвольный вывод. Даже если раскидать по постам определенные мета поля, он которых будет зависеть положение рубрики в списке, то выходит не совсем прозрачно и понятно.

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*