@Mixa

Почему в get_terms не работает сортировка по ID?

В одном из проектом у меня есть таксономия с классами школы, которыя я созал по очереди, от первого до 11. Т.е. айди их тоже записаны в базу последовательно. И вот я беру каждый терм (т.е. школный класс) и проверяю наличие постов в каждом из них, после чего вывожу классы, для которых такая комбинация обнаружена. Проблема в том, что классы выводятся не по порядку, хотя функция get_terms() должна по умолчанию выводить именно по айди. Что я делаю не так?

$terms = get_terms('class'); 
  if ( !empty( $terms ) && !is_wp_error( $terms ) ){ 
  echo '
          
            <ul class="col tags_btns">
'; 

  $t = 0;
 
  foreach ( $terms as $term ) { 


 
     $term = sanitize_term( $term, 'class' ); 
     $term_link = get_term_link( $term, 'class' ); 
      

     $args = array(
	        'post_type' => 'post',
          'orderby' => 'id',
	        'order'   => 'ASC',
	        'tax_query' => array(
		'relation' => 'AND',
		array(
			'taxonomy' => 'category',
			'field'    => 'term_id',
			'terms'    => array( $rubryka ),
		),
		array(
			'taxonomy' => 'class',
			'field'    => 'term_id',
			'terms'    => array(  $klasuroku ),
		),
	),
     );


    $postslist = get_posts( $args );
    $count = count($postslist); 

     
   if($count>0) {
  

     echo '<li><a href="/show?rubr='.$rubryka.'&clasid='.$term->term_id.'" class="btn h4 rnd sh clr_def"';

      if($klasuroku == $term->term_id) {
        echo ' style="background-color: #228ab9;"';
      } 

     echo '>'. $term->name . '&nbsp;<small>('.$count.')</small>' . '</a></li>'; 
     
      $t++;

   } // count
  } 
   
  
  echo '
        </ul>
        ';
  }
  • Вопрос задан
  • 417 просмотров
Пригласить эксперта
Ответы на вопрос 1
@WQP
Потому что нет параметра tax_query вот тут всё об этой функции wp-kama.ru/function/get_terms
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы