Вывод тегов

Главные вкладки

Аватар пользователя вOFFка вOFFка 16 июня 2009 в 23:49

Есть код вывода тегов :

<?php
$max_fontsize = 17;  // Размер шрифта для тэга с максимальным весом
$min_fontsize = 8;   // Размер шрифта для тэга с минимальным весом
$metrics = 'pt';     // в чем измеряется размер px,pt,em, (с установкой в процентном отношении Flash  облоко глючит )
$voc = array(2);     // массив (vid) словарей
$max_tags = 50;      // максимальное количество показываемых тэгов
$vocs = implode(',',$voc);
$class_voc = implode('-',$voc);
$result = db_query(db_rewrite_sql("SELECT max(cnt) AS maxcnt,min(cnt) AS mincnt
FROM {term_data} td  INNER JOIN
(SELECT tn.tid,COUNT(tn.nid) as cnt  FROM {term_node} tn
INNER JOIN {node} n ON n.nid=tn.nid GROUP BY tn.tid) n
ON n.tid=td.tid AND td.vid IN ("
.$vocs.")"));
$term = db_fetch_object($result);
$min_weight = $term->mincnt;
$max_weight = $term->maxcnt;
// вычислим коэффициент для размера шрифт
if ($min_weight == $max_weight ) {
    $font_metric_koof = 0;
}
else {
    $font_metric_koof = ($max_fontsize - $min_fontsize) / ($max_weight - $min_weight);
}
$result = db_query_range(db_rewrite_sql("SELECT td.tid,td.name,n.cnt
FROM {term_data} td  INNER JOIN
(SELECT tn.tid,COUNT(tn.nid) as cnt,MAX(n.created) as created  FROM {term_node} tn
INNER JOIN {node} n ON n.nid=tn.nid GROUP BY tn.tid) n
ON n.tid=td.tid AND td.vid IN ("
.$vocs.") ORDER BY td.name,n.created DESC"),0,$max_tags);
$tags = '';
while($term = db_fetch_object($result)) {
 $size  = $min_fontsize + ($term->cnt - $min_weight) * $font_metric_koof;
 $style = 'font-size: '.$size.$metrics.';';
 $tags .= l($term->name,'taxonomy/term/'.$term->tid,
  array('attributes' => array('style' => $style,'class' => 'tags-voc-'.$class_voc))).' ';
}
if (!empty($tags)) {
$output = '<tags class="voc-'.$class_voc.'">'.$tags.'</tags>';
echo $output;
}
?>

Подскажите, пожалуйста, как его модифицировать, чтобы выводились теги принадлежащие двум и более постам, ну или хотя бы чтобы они выводились случайным образом.