Criar um Feed RSS
RSS é um subconjunto de "dialectos" XML que servem para agregar conteúdo ou "Web syndication" podendo ser acedido mediante programas/sites agregadores. É usado principalmente em si...
Publicado em: 5 de setembro de 2007 | Leituras: 10.638 |
Canal: XML |
Autor: Redação Oficina da Net
Olá pessoal.
Hoje vou mostar como fazer para criar um feed RSS, hoje muito utilizado pela maioria dos sites. E é uma das novidades que venho com a famosa Web2.0.
Para quem não sabe, RSS é um subconjunto de "dialectos" XML que servem para agregar conteúdo ou "Web syndication" podendo ser acedido mediante programas/sites agregadores. É usado principalmente em sites de notícias e blogs.
A abreviatura do RSS é usada para se referir aos seguintes padrões:
- Rich Site Summary (RSS 0.91)
- RDF Site Summary (RSS 0.9 e 1.0)
- Really Simple Syndication (RSS 2.0)
A tecnologia do RSS permite aos usuários da internet se inscrever em sites que fornecem "feeds" (fontes) RSS. Estes são tipicamente sites que mudam ou atualizam o seu conteúdo regularmente. Para isso, são utilizados Feeds RSS que recebem estas atualizações, desta maneira o usuário pode permanecer informado de diversas atualizações em diversos sites sem precisar visitá-los um a um.
Os feeds RSS oferecem conteúdo Web ou resumos de conteúdo juntamente com os links para as versões completas deste conteúdo e outros metadados. Esta informação é entregue como um arquivo XML chamado "RSS feed", "webfeed", "Atom" ou ainda canal RSS.
Geralmente expecificados pelas imagens:

Um exemplo de como deverá seguir nosso RSS:
As Tags acima, são Tags padrão que devem ser mantidas. Somente o que irá variar dentro das tags acima é a TAG <item></item>. Iremos criar a tag item na quantidade de colunas ou registros que buscaremos no banco de dados.
Abaixo o código php que faz a mágica:
Este código faz a busca no banco, retorna os últimos 20 registros e salva no arquivo .xml
O resultado:

Hoje vou mostar como fazer para criar um feed RSS, hoje muito utilizado pela maioria dos sites. E é uma das novidades que venho com a famosa Web2.0.
Para quem não sabe, RSS é um subconjunto de "dialectos" XML que servem para agregar conteúdo ou "Web syndication" podendo ser acedido mediante programas/sites agregadores. É usado principalmente em sites de notícias e blogs.
A abreviatura do RSS é usada para se referir aos seguintes padrões:
- Rich Site Summary (RSS 0.91)
- RDF Site Summary (RSS 0.9 e 1.0)
- Really Simple Syndication (RSS 2.0)
A tecnologia do RSS permite aos usuários da internet se inscrever em sites que fornecem "feeds" (fontes) RSS. Estes são tipicamente sites que mudam ou atualizam o seu conteúdo regularmente. Para isso, são utilizados Feeds RSS que recebem estas atualizações, desta maneira o usuário pode permanecer informado de diversas atualizações em diversos sites sem precisar visitá-los um a um.
Os feeds RSS oferecem conteúdo Web ou resumos de conteúdo juntamente com os links para as versões completas deste conteúdo e outros metadados. Esta informação é entregue como um arquivo XML chamado "RSS feed", "webfeed", "Atom" ou ainda canal RSS.
Geralmente expecificados pelas imagens:

Um exemplo de como deverá seguir nosso RSS:
<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0">
<channel>
<title>Oficina da Net</title>
<description>Portal WebMaster</description>
<link>http://www.oficinadanet.com.br</link>
<language>pt-br</language>
<item>
<title>Título da Coluna</title>
<description>Descrição da coluna</description>
<lastBuildDate>Aqui entra a data</lastBuildDate>
<link>http://www.oficinadanet.com.br/index.php?acao=colunas_show&id=1>/link>
</item>
</channel>
</rss>As Tags acima, são Tags padrão que devem ser mantidas. Somente o que irá variar dentro das tags acima é a TAG <item></item>. Iremos criar a tag item na quantidade de colunas ou registros que buscaremos no banco de dados.
Abaixo o código php que faz a mágica:
<?
//FEED RSS
$rss = '<?xml version="1.0" encoding="iso-8859-1"?>';
$rss .= '<rss version="2.0">';
$rss .= '<channel>';
$rss .= '<title>Oficina da Net - Colunas</title>';
$rss .= '<description>http://www.oficinadanet.com.br</description>';
$rss .= '<link>http://www.oficinadanet.com.br</link>';
$rss .= '<language>pt-br</language>';
// Conexão ao banco
$connect = mysql_connect('localhost','username','password');
// Selecionamos nossa base de dados
mysql_select_db('base',$connect);
$rs_rss = mysql_query("SELECT id, titulo,descricao,data FROM tabela_colunas ORDER BY data DESC LIMIT 20", $connect);
// Iniciamos nossa variável $conteudo vazia.
$conteudo = "";
while($criando=mysql_fetch_object($rs_rss))
{
$conteudo .= '<item>';
$conteudo .= "<title>$criando->titulo</title>";
$conteudo .= "<description>$criando->descricao</description>";
$conteudo .= "<lastBuildDate>$criando->data</lastBuildDate>";
$conteudo .= "<link>http://www.oficinadanet.com.br/index.php?acao=colunas_show&id=".$criando->id."</link>";
$conteudo .= '</item>';
}
// Aqui a var xml recebe todo conteudo da var rss e mais da var conteudo
$xml = $rss.$conteudo;
// Fechamos nossas TAG
$xml .= '</channel></rss>';
// Depois de criarmos nosso rss, vamos gravar ele em disco para podermos utilizar.
// Abre o arquivo para leitura e escrita; coloca o ponteiro do arquivo no começo
// e diminui (trunca) o tamanho do arquivo para zero. Se o arquivo não existe,
// tenta criá-lo (w+).
$arquivo = fopen('pasta/artigos.xml','w+');
// gravamos os dados no arquivo.xml
fwrite($arquivo,$xml);
// fechamos nosso arquivo
fclose($arquivo);
?>Este código faz a busca no banco, retorna os últimos 20 registros e salva no arquivo .xml
O resultado:

Resposta em até 24 horas! (grátis)Dúvidas?
Autor da matéria
Últimas matérias escritas pelo autor:
|
Redação Oficina da Net A Redação do Oficina da Net é composta por todos os integrantes da equipe do portal. Estamos abertos a indicações de matérias, entre em contato conosco solicitando sua dúvida, ou acesse nosso fórum. |
Últimas matérias escritas pelo autor:
30/08 - Dicas de segurança para smartphones co...
27/08 - Eleições: redes sociais dão mostras de...
23/08 - 5 dicas para aumentar a proteção no e-...
12/08 - Web Analytics - Só números não bastam
09/08 - Google Android OS
09/08 - Business Intelligence: é estratégia ou...
06/08 - Os desafios de recursos humanos nas em...
05/08 - Neutralidade da rede o que é?
02/08 - Nota Fiscal Eletrônica: cumpra a lei e...
29/07 - Saiba como ter segurança na internet d...
26/07 - Cloud Computing redesenha modelo de ne...
26/07 - O sucesso depende de manter foco?
07/07 - Usabilidade de interfaces para EAD
07/07 - Dicas para deixar o Firefox mais rápid...
27/08 - Eleições: redes sociais dão mostras de...
23/08 - 5 dicas para aumentar a proteção no e-...
12/08 - Web Analytics - Só números não bastam
09/08 - Google Android OS
09/08 - Business Intelligence: é estratégia ou...
06/08 - Os desafios de recursos humanos nas em...
05/08 - Neutralidade da rede o que é?
02/08 - Nota Fiscal Eletrônica: cumpra a lei e...
29/07 - Saiba como ter segurança na internet d...
26/07 - Cloud Computing redesenha modelo de ne...
26/07 - O sucesso depende de manter foco?
07/07 - Usabilidade de interfaces para EAD
07/07 - Dicas para deixar o Firefox mais rápid...
Últimas matérias







O que você procura para sua vida profissional?
O planejamento agrega valor
E-mail marketing em 140 caracteres
Novos iPods, novo iOS, novo iTunes e nova Apple TV
Conheça as 100 primeiras cidades atendidas pelo Banda Larga ...
Linus Torvalds diz que mercado já se rendeu ao Linux