set
1
2009

Script em ASP – Database Sitemap Generator

Script para geração de XML Sitemaps em ASP, com dados armazenados em banco. Acima, o resultado.

Script para geração de XML Sitemaps em ASP, com dados armazenados em banco. Acima, o resultado.

Aqui, disponibilizamos mais um script em ASP para a geração de sitemaps em XML no formato aceito pelo Google e, consequentemente, pela maior parte dos mecanismos de busca da Internet.

Este script foi publicado originalmente por Francesco Passantino, em conformidade com os padrões definidos por Sitemap.Org.

Abaixo, seguem alguns comentários para que você use de forma mais eficiente o script aqui disponibilizado.

1
MAXURLS_PER_SITEMAP = 10000

Acima, definimos o máximo de itens que o sitemap poderá conter. Essa quantidade é recomendação do próprio Google, que pede que os sitemaps contenham no máximo 10.000 URLs.

1
baseurl="http://www.seusite.net/pagina.asp?id="

Acima, definimos a URL base que será usada para construir os links do seu site. Neste caso, passamos a página (que poderia ser uma página de notícias, por exemplo) e um parâmetro “id” que será completado com as informações do banco.

1
strsql = "SELECT ID, ID_Cat, Date FROM tb_XPTO ORDER BY Date DESC;"

Acima, definimos a string de consulta que será utilizada para trazer os dados do banco. Temos os campos ID, ID_Cat (categoria) e Date da tabela tb_XPTO (fictícia). O resultado da consulta será ordenado por data (do registro mais recente para o mais antigo).

1
2
'see http://www.time.gov/ for utcOffset
utcOffset=-3

Acima, como explicado no outro post, definimos o horário do nosso servidor como sendo UTC -3 (horário de Brasília).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open strsql, oConn
Do while not rs.eof
if URLS<MAXURLS_PER_SITEMAP then

'modify this to change database field
idNew = Server.URLEncode(rs("ID"))
cat = rs("ID_cat")
filelmdate=rs("Date")
if filelmdate="" then filelmdate=now() end if
filedate=iso8601date(filelmdate,utcOffset)

response.write ""&server.htmlencode(baseurl&cat&"&id="&idNew)&""&filedate&"
0.90"


URLS=URLS+1
Response.Flush
rs.movenext
end if
Loop

Acima executamos os seguintes passos:

  1. Criamos um objeto Recordset;
  2. O objeto Connection executa o código SQL e preenche o recordset;
  3. Para cada item do Recordset:
    • Verifica se a quantidade máxima de URL’s foi atingida;
    • Formata os dados trazidos (URLEncode);
    • Formata a data (iso8601date());
    • Escreve na página;
    • Incrementa a contagem de URLs;
    • Descarrega o buffer atual;
  4. Repete até não haver mais registros.

Bem, por hora isso é tudo. Clique na imagem abaixo para fazer o download do script compactado no padrão Zip.

DownloadASP Database Sitemap Generator

Posts relacionados

About the Author: Edu Nicácio

Analista de Sistemas com experiência em sistemas de médio e grande porte em empresas de Telecom, Seguros e Automobilística. Possui mais de sete anos de experiência em desenvolvimento de sistemas Web, cliente-servidor, multi-camadas e desktop, trabalhando com tecnologias como .Net (C#), Java, Delphi, ASP, JavaScript, XML, CSS, XHTML, SQL, Transact/SQL, PL/SQL, PG/SQL, MySQL, Unix/Linux e ShellScript. Quando não está estudando ou desenvolvendo alguma coisa nova, gosta de passar o tempo com a esposa e os amigos.

Deixe um comentário

Spam protection by WP Captcha-Free

Publicidade