Crie um feed personalizado para qualquer site usando WordPress

Conhece a Digital Ocean? Tenha VPS em cloud pagando a partir de US$ 5 por mês! Cadastre-se pelo meu link de afiliado aqui e ganhe US$ 10! Dá para testar o plano mais básico por 2 meses, ou o segundo por um... Existem várias distros Linux pré-configuradas, muitos tutoriais de instalação dos serviços web e um excelente suporte. O serviço é rápido e estável, tenho gostado muito! Vale a pena conferir e resgatar os seus 10 dólares de crédito ao ativar sua conta. Eles aceitam PayPal ;)

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.

publicidade
comments powered by Disqus

Comentários arquivados

  1. escreveu

    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?

  2. escreveu

    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)

  3. escreveu

    Obrigado por tirar a minha duvida do site de downloads, vou tentar instalar, excelente postagem, está de parabéns

  4. jean de souza pereira escreveu

    eu quero desbloquear meu telefone q bloqueu
    do na
    nem eu sei como!!!

  5. escreveu

    Ta certo pessoal, mais tenho irformações valiosas sobre o assunto em meu site ! se puderem entrem ai.