Pular para o conteúdo

Como atribuir notícias RSS ao seu site usando ATOM e PHP

Atom é o nome dado a um estilo baseado em conteúdo XML e metadata, ou seja, é um protocolo em nível de aplicação para publicar e editar fontes web que são periodicamente atualizados, um exemplo para isto são os blogs.
Roberson Carlos robersonfox
Hits: 29.057 Categoria: PHP Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

O que é o ATOM

Atom é o nome dado a um estilo baseado em conteúdo XML e meta data, ou seja, é um protocolo em nível de aplicação para publicar e editar fontes web que são periodicamente atualizados, um exemplo para isto são os blogs.

Os feeds devem ser formados em formato XML e são identificados como application/atom+xml media type.

O funcionamento dele não difere das Markup Languages tradicionais, com cabeçalhos, títulos e corpo, como no HTML 4.0.

Elementos do Feed (Cabeçalho)


Um feed consiste de alguns Metadata seguidos por alguns números de entrada. Todo feed deve conter um cabeçalho.

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

     <title>Genova Home Page - News Feed</title>
     <link href=http://www.genova.einet.com.br/>
    <updated>2006-01-05 3:05:47</updated>
  
   <author>
     <name>Roberson Carlos Fox</name>
     <email>robersonfox@genovaengine.com</email>
     <uri>http://www.genova.einet.com.br/about-me</uri>
   </author>
  
     <id>http://www.genova.einet.com.br</id>
   <icon>http://www.genova.einet.com.br/img/genova.ico</icon>
   <logo>http://www.genova.einet.com.br/img/G3.jpg</logo>
   <rights> © 2002-2006 Roberson Carlos Fox </rights>
   <subtitle>Esteja atualizado com o que há de melhor na web</subtitle>
   <category term=Informática/>
</feed>
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Elementos requeridos do cabeçalho:

Abaixo se segue uma lista com os principais elementos requeridos em um feed e um exemplo.
  • ID, Identifica o Feed usando um universal e permanente URL, você pode colocar seu Nome de Domínio nesta parte. Ex.:
    <id>http://www.genova.einet.com.br</id>

  • Title, contem o título do Feed, este valor não pode ser deixado em branco de maneira alguma. Ex.:
    <title>Genova Home Page - News Feed</title>

Elementos recomendados:
  • Author, nome do autor do Feed, um feed pode ter inúmeros autores e um feed precisa ter ao menos um autor. Ex.:
    <author>
    <name>Roberson Carlos Fox</name>
    <email>robersonfox@genovaengine.com</email>
    <uri>http://www.genova.einet.com.br/about-me</uri>
    </author>

  • Link, identifica uma HP relacionada, o tipo de relação é atribuído pode atributo rel. Ex.:
    <link rel="self" href=" http://www.genova.einet.com.br/" />

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. O que é o ATOM
   2. Elementos (Entradas) do Corpo (ENTRY)
   3. Exemplo de feed
   4. Colocando as coisas para funcionar com PHP

Rodando jogos a partir de uma imagem ISO

Gerando arquivos JAR com o Eclipse

Avast antivírus para GNU/Linux

Instalando Apache Tomcat em Linux 2.6

Alterando as permissões de um arquivo

Criando sites para celular com WML

Criando gráficos com a classe JPGraph (parte 1)

Instalando Lamp Stack no Servidor Debian

Como programar com OOP em PHP, uma classe simples

Formantando nomes com caracteres especiais em PHP

#1 Comentário enviado por lipse em 23/06/2006 - 11:12h
Olá Roberson,

Parabéns pelo tutorial. Sou leigo no assunto e gostaria de saber como fazer um RSS de outros sites (de um site que eu gosto mas que ainda não tem um RSS)?

É que vi o Bruno Torres (http://www.brunotorres.net/) dizendo que fez um RSS pra alguns sites que ele gosta, aí fiquei curioso, pois achava que somente o dono do site poderia fazê-lo.

Obrigado.
#2 Comentário enviado por robersonfox em 24/06/2006 - 19:01h
Caro Amigo Lipse,
posso estar até enganado, porém, acho que é impossível, se você notar, será necessário ter acesso ao banco de dados do servidor em questão, e te pergunto, qual webdesign faria isto, daria todos os dados para que outros pegassem dados do seu banco de dados, o que o o Bruno Torres deve ter feito é pego os rss's com um leitor tipo o rssowl.
#3 Comentário enviado por robersonfox em 24/06/2006 - 19:10h
Eu havia pedido a um moderador o qual não me recordo o nome para não colocar este artigo no ar por falta de um único parâmetro que não permitiria que este funcionasse, mas acredito que ele não recebeu o recado, mas então vai aí uma correção para o script em PHP acima.

Antes de:

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">;

Insira:

header("Content-Type: text/xml");

Cado não fizer isto não funciona.
#6 Comentário enviado por lipse em 24/06/2006 - 23:39h
O Bruno usa esse arquivo como fonte pro feed que ele faz?
#7 Comentário enviado por denes em 24/05/2007 - 16:11h
Olá, Roberson!
Parabéns pelo artigo. Simples e objetivo. Era exatamente o que eu estava procurando.
Gostaria de saber: é possível você ou o moderador fazer a correção mencionada acima 'header("Content-Type: text/xml");' no corpo do artigo? Ou um alerta no início dele? Às vezes lemos o artigo e não os comentários.
tks!
#8 Comentário enviado por robersonfox em 17/06/2007 - 13:11h
denes, eu até que pedi mas os caras não deram ouvido

Contribuir com comentário

Entre na sua conta para comentar.