DARTHARTH

Фильтрация пустых таксономий

Коллега по работе подсказал отличный способ как для простого вывода таксономий на php добавить фильтрацию пустых таксономий

<?php
$category = db_query("SELECT name, tid FROM {taxonomy_term_data} WHERE vid = 2 ORDER BY name ASC")->fetchAll();
$actual_first_letter = NULL;
echo '
    <div class="cat-abc">
  ';
foreach($category as $word){
  $categoryurl = url('taxonomy/term/'.($word->tid), array('absolute' => TRUE));
  $current_first_letter = mb_strtoupper(mb_substr($word->name,0,1));

  $count = db_select('field_data_field_category', 'c')
    ->condition('c.field_category_tid', $word->tid)
    ->countQuery()
    ->execute()
    ->fetchField();
  
  if ($count > 0) {
    if($actual_first_letter != $current_first_letter){
      echo '
        <div class="cat-letter">
          <span>'.$current_first_letter.'</span>
        </div>
        ';
      $actual_first_letter = $current_first_letter;
    }
    echo '
      <div class="cat-item">
        <a href="'.$categoryurl.'">'.$word->name.'</a>
      </div>
    ';
  }
  
  
}
echo '
    </div>
  ';
?>

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Scroll Up