out 06

Criando uma Nuvem de Tags com Zend_Tag

Nuvem de Tags, Tag, Tag Cloud, Zend Framework, Zend_Tag 2 Comentários Zend Framework

Desenvolver nuvens de tags com PHP puro pode ser um trabalho um pouco complexo pois nunca se poderá prever quantas tags estarão disponíveis ou quantos itens estarão relacionados com cada um dessas tags, porem com Zend Framework esse trabalho fica muito mais fácil.

Criando uma Nuvem de Tags

Como em quase tudo no Zend Framework existem diferentes formas de se criar um nuvem de tags, a maneira que irei apresentar nesse artigo é a maneira automatizada de fazer esse processo, utilizando Zend_Tag_Cloud que gerá uma lista não ordenada (<ul>) com os elementos da nuvem de tags sendo atribuido a cada um dos elementos um link, o código abaixo demonstra como é simples criar essa nuvem de tags:

$nuvem = new Zend_Tag_Cloud(array(
	'tags' => array(
		array('title' => 'Tecnologia', 'weight' => 32,
			'params' => array('url' => '/tag/tecnologia')),
		array('title' => 'Negocios', 'weight' => 26,
			'params' => array('url' => '/tag/negocios')),
		array('title' => 'Mundo', 'weight' => 15,
			'params' => array('url' => '/tag/mundo')),
	)
));

echo $nuvens;

No código acima tudo que foi feito foi criar uma instância da classe Zend_Tag_Cloud e passar ao seu construtor uma array de opções com somente a opção ‘tags’ que recebe um outro array com as informações sobre cada uma das tags que estão sendo utilizadas, essas informações são, o nome da tag (title), o peso da tag (weight) e um terceiro parâmetro com a URL que deve ser inserida no link dessa tag (url).

Para o peso da tag você pode passar o número de elementos que está relacionado a cada uma das tags, dessa forma quando o Zend_Tag_Cloud for gerar a nuvem de tags ele irá atribuir tamanhos de fonte maiores às tags que se relacionarem com mais elementos e menores aquelas que se relacionarem com menos elementos.

Outros aspectos da nuvem como tamanho das fontes ou mesmo quais elementos de HTML serão utilizados ao redor de cada item da nuvem podem ser controlados por Decorators, para uma lista completa desses decorators consulte o manual da classe Zend_Tag_Cloud. Nesse mesmo manual você poderá encontrar mais informações sobre outras formas de se trabalhar com Nuvens de Tags com Zend Framework.

Conclusão

Através da forma apresentada você conseguirá criar sua própria nuvem de tags para o blog ou site que estiver desenvolvendo, essa forma de se trabalhar com Nuvem de Tags deve resolver em 90% dos casos, mas caso você precise desenvolver Nuvens de Tags mais complexas com mais elementos e opções o ZF também permite isso seja realizado sem muito esforço, porém, meu objetivo com esse artigo era apenas mostrar uma das formas mais práticas de se trabalhar com esse elemento de um site, espero que tenham gostado e sintam-se a vontade para utilizar o campo de comentários caso precisem de mais alguma informação.

2 respostas para “Criando uma Nuvem de Tags com Zend_Tag”

  1. leomar disse:

    este trecho de código é inserido na view, ou controller ou form ?

    • Paulo Eduardo disse:

      Ola,

      O artigo demonstra somente o funcionamento de uma nuvem de tags com Zend Framework é foi escrito com o objetivo de estudo do código e não somente para ser copiado e colado para satisfazer um interesse imediato. De qualquer forma minha recomendação e que a nuvem de tags seja criada em um controller e impressa em uma view, estando assim de acordo com o propósito da divisão em camadas.

Deixe uma resposta