ASP / Diversos

Criando uma Nuvem de Tags (Tag Clouds) para seu site com ASP

visto por 1074 vez(es)

É fato que hoje a maioria dos sites, principalmente os blogs, possui a chamada Nuvem de Tags ou Tag Clouds, mas o que é isso?

As Tag Clouds são uma forma diferente de navegação no site através de tags ou legendas, como queiram.

O conceito geral é a de apresentar várias tags agrupadas destacando as que têm mais peso; ou por ser mais utilizado nas pesquisas ou por ser mais popular por alguma razão.

O que importa na verdade é dar ao visitante do site, uma forma diferente e rápida de encontrar apenas clicando na tag em que o visitante ache a melhor.

O código a seguir foi desenvolvido em ASP. É um procedimento (Sub) que realiza a geração de uma área para as Tag Clouds.

Dei o nome do procedimento de doTagClouds e os parâmetros são:
  • Id: Identificação da DIV na qual estarão as tags.
  • Tags: Lista das tags separadas por vírgula com a respectiva indicação de peso (de 1 a 5). Quanto menor for o peso maior será o destaque da tag em relação às outras.
    Exemplo: Programação=5,ASP=2,Código=1
    .
    No exemplo acima a tag "Programação" terá menor destaque, enquanto a tag "Código" terá o maior destaque
  • Link: Este será o link base para criar os links das tags. Será necessário incluir neste link a chave [TAG] para que o procedimento possa substituí-la pela tag propriamente dita.
    Exemplo: http://www.codigofonte.com.br/tags/[TAG]

Copiar o Código para a Área de Transferência
Aumentar fonte
Diminuir fonte
Aumentar a altura da caixa de código
Diminuir a altura da caixa de código
Visualizar código em modo de edição
<%
'-----------------------------------------------------
'Procedimento: doTagClouds(ByVal Id, ByVal Tags, ByVal Link)
'Sinopse: Gera a area das Tags Clouds com até 5 níveis de peso
'Parametro:
'	Id = Id da área das tags
'	Tags = Lista das tags separadas por ","
'		   no seguinte formato: Tag=Peso,Tag2=Peso, ...
'	Link = Link para a tag (utilize [TAG] no link 
'	       para substituir pela tag)
'Autor: Gabriel Fróes (www.codigofonte.com.br)
'Data: 20/08/2008
'-----------------------------------------------------
Sub doTagClouds(ByVal Id, ByVal Tags, ByVal Link)
	Dim arrTags
	Dim Cont
	Dim Tag
	Dim Peso
	If Not Tags = "" Then
		Response.Write "<div id=""" & Id & """ class=""tag_clouds"">"
		arrTags = Split(Tags, ",")
		For Cont = 0 To Ubound(arrTags)
			Tag = Split(arrTags(Cont), "=")(0)
			Peso = Split(arrTags(Cont), "=")(1)
			Response.Write "<h" & Peso & "><a href=""" & Replace(Link, "[TAG]", Lcase(Tag))  & """>" & Tag & "</a></h" & Peso & ">"
		Next
		Response.Write "<br clear=""all"" /></div>"
	End If
End Sub
%>
<html>
<head>
<title>Nubem de Tags - Tag Clouds com ASP</title>
<style>
.tag_clouds{border:1px solid #2C2E2A;padding:7px;width:350px;background:#71766C}
.tag_clouds h1, .tag_clouds h2, .tag_clouds h3, .tag_clouds h4, .tag_clouds h5{margin:0;padding:0;height:30pt;line-height:30pt;display:inline;float:left;text-align:left}
.tag_clouds h1 a, .tag_clouds h2 a, .tag_clouds h3 a, .tag_clouds h4 a, .tag_clouds h5 a{font:bold italic 10pt 'Trebuchet MS';margin:0 1px;color:#BABEB7;text-decoration:none}
.tag_clouds h1 a{font-size:23pt;color:#FFF}
.tag_clouds h2 a{font-size:20pt}
.tag_clouds h3 a{font-size:18pt}
.tag_clouds h4 a{font-size:14pt}
.tag_clouds h5 a{font-size:10pt;color:#c0c0c0}
</style>
</head>
<body>
<%
'Exemplo de chamada do procedimento
Dim asTags
Dim Link
asTags	= "Programação=1,Asp=2,PHP=3,HTML=4,Programação=5,Asp=1,PHP=1,HTML=3,Programação=5,Asp=4,PHP=2,HTML=4,Programação=5,Asp=1,PHP=2,HTML=3,Wikipedia=1,Asp=2,PHP=3,HTML=4,JavaScript=5,Asp=1,PHP=2,HTML=3,Programação=1,Asp=2,PHP=3,HTML=4,Programação=5,Asp=1,PHP=2,HTML=3"
Link	= "http://www.codigofonte.com.br/tags/[TAG]"
Call doTagClouds("tags", asTags, Link)
%>
</body>
</html>

Sim   Não   Este código foi útil para você?
NotaComentárioMembro
Ainda não foi enviado nenhum comentário.
Regras:
Os comentários seguem as seguintes regras:
  • Todos os comentários são enviados por membros cadastrados no site.
  • Os comentários serão pré-aprovados, porém a equipe do site revisará o conteúdo de todos os comentários podendo ser invalidados (inclusive a pontuação).
  • Os comentários precisam ter, obrigatóriamente, coerência sobre o conteúdo que será comentado.
  • O membro que atingir 10 comentários invalidados não poderá mais comentar dentro do site. Com isso o membro não poderá mais ganhar pontos com comentários.