Создание портлета облака тегов ============================== [Облако тегов](http://ru.wikipedia.org/wiki/Облако_тегов) отображает список тегов записей с визуальным оформлением, показывающим популярность каждого тега. Создание класса `TagCloud` ------------------------- Мы создаем класс `TagCloud` в файле `/wwwroot/blog/protected/components/TagCloud.php`. Содержимое файла: ~~~ [php] Yii::import('zii.widgets.CPortlet'); class TagCloud extends CPortlet { public $title='Tags'; public $maxTags=20; protected function renderContent() { $tags=Tag::model()->findTagWeights($this->maxTags); foreach($tags as $tag=>$weight) { $link=CHtml::link(CHtml::encode($tag), array('post/index','tag'=>$tag)); echo CHtml::tag('span', array( 'class'=>'tag', 'style'=>"font-size:{$weight}pt", ), $link)."\n"; } } } ~~~ Портлет `TagCloud`, в отличие от портлета `UserMenu`, не использует отображение. Вместо этого его внешний вид формирует метод `renderContent()` так как нет необходимости выводить большое количество HTML. Мы отображаем каждый тег как ссылку на список записей, содержащих его. Размер шрифта каждой такой ссылки изменяется в зависимости от относительного веса тега по отношению к остальным. Чем более часто используется тег, тем больший используется размер шрифта. Использование портлета `TagCloud` -------------------------------- Использовать портлет `TagCloud` очень просто. Мы изменяем файл макета `/wwwroot/blog/protected/views/layouts/column2.php` следующим образом: ~~~ [php] …
… ~~~