por Marcos Elias
Criar feed RSS não é tão difícil, o ruim é mantê-lo atualizado. A maioria dos CMS têm geradores de feeds embutidos, o WordPress é um deles. Ele cria feeds para posts, categorias, tags, autores, comentários…
Mas e se você quiser algo diferente, um feed onde você possa incluir novos artigos/textos, e/ou optar por não mandar para o feed alguns artigos?
Uma saída que encontrei foi usar o WordPress para ter o feed do site, uso aqui no Explorando. Durante uns desentendimentos com o mysql, postei vários artigos manualmente, que não foram pro WordPress – aí me veio a necessidade de um feed “personalizado”.
A dica é usar uma instalação personalizada do WordPress só para criar o feed. Você posta num novo wordpress o mesmo texto que postou no blog, e divulga o feed dele, em vez de divulgar o do blog. Exige um trabalhinho manual a mais, mas funciona e dá para ser melhorado.
Você deve estar pensando… Mas se a pessoa clicar no link do feed, vai pro post no wordpress separado só para o feed, não é? Em teoria sim. Mas…
O WordPress tem campos personalizados nos posts. Excelente! Ao postar um novo item no feed, criamos um campo personalizado (por exemplo, chamado “redir”) e colocamos nele a URL do post no blog real. Agora basta modificar o arquivo single.php do tema para ler esse campo e redirecionar a página para ela!
Bom, vamos com um exemplo mais didático…
Usando o WordPress para criar um feed RSS personalizado
Faça uma nova instalação do WordPress. Pode estar em qualquer lugar, serve uma subpasta do seu servidor. Evitei usar o nome “feed” pois é usado na estrutura de links permanentes do WP, você poderia chamá-la “feed-site”, como fiz com “feed-exp” no caso do Explorando.
Cada post que você criar no seu blog, ou para cada item que deseja usar no feed, crie uma nova entrada nesse novo WordPress (CTRL+C/CTRL+V no título e texto… :D). Antes de clicar em Publicar, edite o campo personalizado adicionando a URL do post real (aqui usei o nome “redir”):
Do lado esquerdo: o nome do campo personalizado (redir). Do lado direito, o valor: a URL do post real.
Preparando o tema
Eu havia editado o tema default do WordPress, mas depois fiz um mais limpo. Afinal ele não vai mostrar NADA pro usuário, só vai ler o post e redirecionar para a URL do campo personalizado “redir”. Meu tema para o RSS tem apenas 3 arquivos: um index.php (que redireciona para a home do meu site), o single.php que comentei acima, e o style.css – não com estilos visuais, apenas com o nome do tema, campos padrões do WordPress.
Clique aqui para baixar o tema pronto (você só precisará trocar o endereço pelo endereço do seu site nos arquivos index.php e single.php).
Meu single.php ficou assim:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?
Header( "HTTP/1.1 301 Moved Permanently" );
$mepredir = get_post_meta($post->ID, 'redir', true);
if ($mepredir == '') {
Header( "Location: http://www.explorando.viamep.com");
} else {
Header( "Location: " . $mepredir);
}
?>
<?php endwhile; else: ?>
<?php endif; ?>
No index.php deixei apenas isso:
<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.explorando.viamep.com/" );
?>
A página index.php do tema é usada para criar a página de entrada, categorias, listagens, tags, etc. A single.php cria a página dos posts individuais. Um tema pro WP pode ser usado só com esses dois arquivos, sem nada de header, footer, etc – você poderia incluir as funções nesses arquivos, ou mesmo criar um único. A modularização dos temas em vários arquivos facilita basicamente a edição (e dá mais trabalho pro PHP ficar juntando as partes, mas como os computadores são burros os servidores nem ligam :P).
Conclusão
Quase lá. Agora você precisa redirecionar o feed do blog real para o novo feed, o que pode ser feito pelo htaccess com essa linha:
# FEED ANTIGO
redirect 301 /feed http://www.enderecodofeedantigo.com.etc
Ou diretamente para o FeedBurner, se usar ele:
# FEED ANTIGO
redirect 301 /feed http://feeds.feedburner.com/seusite
Por fim, edite sua conta no FeedBurner para usar para seu novo feed.
Agora tudo o que quiser incluir no feed, você pode cadastrar no novo WordPress, incluindo eventualmente publicidade, mensagens que os visitantes poderão ler (quem recebe os feeds por email…), links para outros posts do blog, etc. Da mesma forma, se quiser postar um artigo no blog que não deverá ir para o RSS, basta postá-lo no blog principal e não replicá-lo no blog do feed. Se não quiser fornecer conteúdo completo, é só postar um resumo na hora de criar a entrada do feed, e por aí vai. O bom é que você nem precisa ter um blog WordPress, você tem um sistema gerador de feed para qualquer tipo de site, inclusive sites feitos manualmente!
Ah, mais uma, você pode instalar o plugin Feed Footer no WordPress do feed… :)
Você vai ter um trabalho extra de criar um novo post para cada item do feed, mas dados os benefícios, vale a pena. Não é aplicável para todo site, mas pode ajudar. Fica a dica.
Por fim… Você pode ir mais além e criar um formulário para que você poste o conteúdo sem precisar entrar no wp-admin do novo WordPress. E mais, pode usar o sistema de login do WP nele, impedindo que curiosos postem coisas no seu feed. Vou falar mais disso num próximo post. Se quiser fazer desde já, veja como manipular o WordPress fora dos arquivos dele.

Eu gostaria de ter feeds no meu site de downloads, teria como instalar ele só para os feeds? E quanto aos subdominios, teria que instalar um pra cada subdominio?
Hum… Se o feed que vc queira for “único” não precisa instalar para vários domínios não, pode ir adicionando no mesmo.
E se forem vários sites e você quiser um feed para cada um, é só criar categorias no blog do feed, uma categoria para cada site. Depois, em vez de divulgar o endereço do feed do blog do feed, divulga o endereço do feed da categoria.
Exemplo:
feed principal: http://www.example.com/feeddosite
feed do site 1: http://www.examle.com/feeddosite/category/site1/feed
Basta adicionar /feed no final do endereço da página de categorias do WP pra pegar o feed daquela categoria (considerando que os permalinks estejam configurados; mas dá pra usar parâmetros também)
Obrigado por tirar a minha duvida do site de downloads, vou tentar instalar, excelente postagem, está de parabéns
eu quero desbloquear meu telefone q bloqueu
do na
nem eu sei como!!!
Ta certo pessoal, mais tenho irformações valiosas sobre o assunto em meu site ! se puderem entrem ai.
show