Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Como criar um feed RSS separado para cada tipo de post personalizado no WordPress

Além de páginas e posts, o WordPress permite que você crie tipos de posts personalizados de acordo com as necessidades exclusivas do seu conteúdo. Por exemplo, talvez você queira criar um tipo de post personalizado para resenhas de filmes, produtos ou depoimentos. Isso pode ajudá-lo a organizar seu site com mais eficiência e melhorar a experiência do usuário.

Se quiser dar um passo adiante, você também pode configurar um feed RSS para cada um dos tipos de post personalizados. Oferecer feeds especializados aos visitantes do seu site permite que eles se envolvam com seu material de forma mais personalizada.

Neste guia, vamos orientá-lo no processo de configuração de feeds RSS separados para tipos de post personalizados no WordPress. Vamos começar!

Making RSS feed for custom post types in WordPress

Criação de feeds RSS separados para tipos de post personalizados no WordPress

Por padrão, o WordPress gera vários feeds RSS para seu site.

Por exemplo, todas as publicações recentes do seu blog aparecem no feed RSS principal do seu site. Esse feed pode ser acessado adicionando /feed/ ao seu nome de domínio desta forma:

https://example.com/feed/

O que a maioria dos iniciantes não sabe é que o WordPress gera feeds RSS separados para cada página de arquivo.

Por exemplo, ele tem feeds RSS separados para categorias, tags, autores e tipos de post personalizados.

Digamos que você tenha um tipo de postagem personalizado chamado filmes em seu site. Você pode visualizar todo o conteúdo criado nesse tipo de post visitando a página de arquivo do tipo de post:

https://example.com/movies

Example of a custom post type archive page

Para visualizar o feed RSS, você só precisa adicionar /feed/ ao lado do URL do arquivo do tipo de postagem personalizada.

https://example.com/movies/feed/

Feed for custom post type

Como alternativa, você pode visualizar o feed adicionando o parâmetro de tipo de post ao seu feed RSS principal do WordPress. Por exemplo:

https://example.com/feed/?post_type=movies

Esse URL buscará apenas o tipo de post personalizado chamado movies.

Alternate custom post type RSS feed URL

Usamos tipos de post personalizados para nossas seções Glossário e Hospedagem WordPress. Ambas têm feeds RSS ativados e podem ser usadas por usuários que desejam se inscrever nessas seções específicas.

Adicionar um link ao feed RSS do tipo de postagem personalizada

Agora que você sabe como acessar os feeds RSS de qualquer tipo de postagem personalizada no seu site WordPress, pode usar esse URL para criar links para os feeds do tipo de postagem personalizada.

Por exemplo, talvez você queira exibir um ícone ou um link de texto simples na página de arquivo do tipo de post personalizado para que os visitantes possam se inscrever facilmente nesses posts.

1. Adicionar um link ao feed RSS do tipo de postagem personalizada em temas de bloco

Se você estiver usando um tema de bloco com suporte completo à edição de sites, veja como adicionar o link.

Primeiro, você precisa adicionar um trecho de código personalizado ao seu site WordPress usando o plug-in WPCode.

Observação: Há também uma versão gratuita do WPCode, que você pode usar para adicionar esse trecho de código.

Primeiro, você precisa instalar e ativar o plug-in WPCode e, em seguida, ir para a página Code Snippets ” + Add New Snippet.

Add new snippet

A partir daí, clique no botão “Use Snippet” abaixo da opção “Add Your Custom Code (New Snippet)”.

Na próxima tela, forneça um nome para seu trecho de código. Pode ser qualquer coisa que ajude você a identificar o snippet. Depois disso, escolha “PHP Snippet” no Tipo de código.

Por fim, adicione o seguinte código à caixa Code Preview (Visualização de código):

    if (is_post_type_archive('movies')) {
            $post_type = get_queried_object();
            // Get RSS Feed URL
            $rss_feed_url = get_post_type_archive_feed_link($post_type->name);
            // Output the shortcode content
            return '<p>Subscribe to <a href="' . esc_url($rss_feed_url) . '">' . $post_type->label . '</a></p>';
        }
    }
// Register the shortcode
add_shortcode('custom_post_type_rss_link', 'custom_post_type_rss_link_shortcode');

Não se esqueça de substituir “movies” pelo nome de seu tipo de post personalizado.

Esta é a aparência de um snippet no plug-in WPCode:

Adding custom code for RSS feed link

Agora, ative o botão “Active” (Ativo) e “Save/Update” (Salvar/Atualizar) seu snippet.

Esse código detecta automaticamente se um usuário visualiza a página de arquivo do tipo de postagem personalizada específica e, em seguida, exibe um link para assinatura.

Em seguida, ele cria um shortcode que pode ser usado em seu tema de bloco ou widgets para exibir o link.

Em seguida, você precisa acessar a página Appearance ” Editor para iniciar o editor do site. Depois disso, escolha a opção Templates ” Archive no menu à esquerda.

Edit Archive template in Site Editor

Em seguida, adicione o bloco Shortcode onde você deseja exibir o link do feed RSS.

O ideal seria mostrá-lo na parte superior, logo abaixo do Nome do arquivo.

Add shortcode block

Dentro do bloco Shortcode, você precisa adicionar o seguinte shortcode:

[custom_post_type_rss_link]

Depois disso, não se esqueça de salvar suas alterações.

Agora você pode visitar a página de arquivo do tipo de post personalizado para ver o link do feed RSS em ação.

RSS feed link preview

2. Adicionar um link ao feed RSS do tipo de postagem personalizada em temas clássicos

A maneira mais fácil de fazer isso é criar um modelo separado para seu tipo de postagem personalizada em seu tema do WordPress.

Conecte-se ao seu site WordPress usando um cliente FTP e navegue até a pasta /wp-content/themes/your-current-theme/.

Agora, se o seu tipo de postagem personalizado for chamado de filmes, você poderá criar um arquivo archive-{post_type}.php na pasta do tema do WordPress.

Depois disso, você pode simplesmente copiar o conteúdo do modelo archive.php do seu tema e começar a personalizar seu novo modelo.

Você pode simplesmente adicionar um link HTML simples ao seu feed de arquivo de tipo de postagem usando o seguinte código:

<p><strong>Subscribe to: <a href="https://example.com/movies/feed/">Movies</a></strong></p>

Não se esqueça de alterar o URL para o URL do feed do tipo de postagem.

Agora, o problema com esse código é que você terá de criar um novo arquivo de modelo apenas para esse tipo de postagem específico.

O próximo método permitirá que você gere dinamicamente o link do feed RSS do tipo de postagem para todas as suas páginas de arquivo.

Basta adicionar o seguinte código ao arquivo de modelo archive.php do seu tema.

<?php if ( is_post_type_archive() ) { 
$post_type = get_post_type( get_queried_object_id() );?> 
				<p><strong>Subscribe to: <a href="<?php echo get_post_type_archive_link( $post_type  ); ?>feed/"><?php post_type_archive_title(); ?></a></strong></p>
<?php } ?>		

Esse código simplesmente adicionará um link abaixo do título da página de arquivo do tipo de postagem, incentivando os usuários a se inscreverem nesse tipo de conteúdo específico.

Dica bônus: Adicione o tipo de postagem personalizada ao seu feed RSS principal

Os feeds RSS de tipo de postagem personalizada não são facilmente detectáveis pelos leitores de feeds, e a maioria dos seus usuários pode encontrar o feed RSS do seu site com mais facilidade.

Isso significa que os usuários inscritos no seu feed RSS principal perderão o conteúdo que você publica no seu tipo de post personalizado.

Você pode corrigir isso facilmente adicionando conteúdo do seu tipo de postagem personalizada para aparecer no feed RSS principal do seu site.

Para fazer isso, você precisará adicionar um trecho de código personalizado ao seu blog do WordPress. Recomendamos usar o WPCode para adicionar trechos de código personalizados no WordPress.

Primeiro, você precisa instalar e ativar o plug-in gratuito WPCode. Para obter mais detalhes, consulte nosso artigo sobre como instalar um plug-in do WordPress.

Depois que o plug-in for ativado, visite a página Code Snippets ” + Add Snippet na barra lateral de administração do WordPress.

A partir daí, você precisa clicar no botão “Use Snippet” na opção “Add Your Custom Code (New Snippet)”.

Add new snippet

Agora você será direcionado para a página “Create Custom Snippet” (Criar snippet personalizado), onde poderá começar digitando um nome para o snippet de código.

Esse nome não será exibido em nenhum lugar e é usado apenas para fins de identificação.

Em seguida, escolha a opção “PHP Snippet” no menu suspenso “Code Type” (Tipo de código) à direita.

Snippet title and code type

Depois disso, você estará pronto para adicionar seu snippet de código personalizado.

Basta copiar e colar o código a seguir na caixa Code Preview (Visualização de código):

function myfeed_request($qv) {
    if (isset($qv['feed']) && !isset($qv['post_type']))
        $qv['post_type'] = array('post', 'movies', 'books');
    return $qv;
}
add_filter('request', 'myfeed_request');

Depois de adicionar o código, digite o nome do tipo de post personalizado ao lado de onde “[‘post_type’]” está escrito no código. Em nosso exemplo, temos “post”, “movies” e “books”.

Esse tipo de post personalizado será adicionado ao seu feed RSS principal do WordPress.

Add code snippet

Em seguida, você precisa rolar de volta para a parte superior da página e alternar o botão “Inativo” para “Ativo”.

Por fim, não se esqueça de clicar no botão “Save Snippet” para salvar e executar o código em seu site do WordPress.

Save snippet

Isso é tudo, seu conteúdo de tipo de postagem personalizada agora será adicionado ao feed RSS principal do site.

Esperamos que este artigo tenha ajudado você a aprender como criar um feed RSS separado para tipos de post personalizados no WordPress. Talvez você também queira ver nosso tutorial sobre como otimizar seus feeds RSS do WordPress e nossas escolhas de especialistas para os melhores plug-ins RSS do WordPress.

Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Divulgação: Nosso conteúdo é apoiado pelo leitor. Isso significa que, se você clicar em alguns de nossos links, poderemos receber uma comissão. Veja como o WPBeginner é financiado, por que isso é importante e como você pode nos apoiar. Aqui está nosso processo editorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

O kit de ferramentas definitivo WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Reader Interactions

29 ComentáriosDeixe uma resposta

  1. Buddika Wijerathena

    Is there way to create RSS feed for single page ?
    Ex – example.com/single-post-type/single-post-name

    How to create RSS for this ?

    • WPBeginner Support

      RSS feeds are for listing multiple posts, the RSS would include a link to the post itself. We would not recommend creating a specific RSS feed for one post or page.

      Administrador

  2. Milan

    Hey, and do you know any rss wordpress plugin for visitors ? As big new companies have own RSS creator to put rss on some freelancer sites, I want to it same, but not with post but with custom post types….do you know some RSS plugin ?

  3. Tori

    It still doesn’t work for me – I’m trying to display an RSS Feed for the content on this page –

    and displays the RSS feed for all of my posts. Any thoughts?

    • WPBeginner Support

      Hi Tori,

      Pages are not included in an RSS feed. The URL you are using would work if you had a custom post type with that particular name.

      Administrador

      • Tori

        Thank you for the response. I’m sorry for the confusion as it looks like my links didn’t appear. The posts that appear on that page are custom posts (it’s like the blog roll but for custom posts), but the method to do the RSS feed didn’t work for me. Any thoughts or suggestions?

        • WPBeginner Support

          Hey Tori,

          If you are certain that the posts belong to a custom post type, then you need to find out the name used by the custom post type. You can do that by clicking on the custom post type menu item in your WordPress admin sidebar. Clicking on it will take you to an admin page listing all the posts in that post type. Now if you look into the browser address bar you will see something like this:

          http://www.example.com/wp-admin/edit.php?post_type=your_post_type

          The part that appears after the post_type= is your custom post type name. Now you need to use this to reach the RSS feed URL for that custom post type.

          http://www.example.com/feed/?post_type=your_post_type

          Hope this helps.

    • Tori

      Thank you for the response. When I do that, I see this error message — any thoughts?

      ______

      This page contains the following errors:

      error on line 2 at column 1: Extra content at the end of the document
      Below is a rendering of the page up to the first error.

  4. Cédric Charles

    Hi and thanks for this !

    I would like to add custom fields for my custom post type feed (not for the regular posts, only for my custom post type).

    How could I do that ?

    Thanks a lot !

  5. Toni

    Great tip! I almost made it from scratch! thank you!

  6. erika

    Thank you a lot! your website helped me so much :)

  7. mike

    I’ve gotten this to work but it limits the posts in the rss feed to 10 when I feedburn it. Is there any way to create a full rss feed for custom post types without limiting the quantity of posts it pulls in?

    • Editorial Staff

      Main feed normally displays the most recent posts. If a user tries to pull your feed using their feed reader, it will pull all older posts as well.

      Administrador

  8. Andrew

    Hi there. Could you tell me how to create a feed for all post types, so someone can signup to a single RSS feed for all posts on the site, regardless of which post type they are in?

  9. Rems

    THANK YOU VERY MUCH, i was looking for this info for 2 hours. Glad i found your info. Fu…. taxonomy, where were you?!! aahhh!
    Work so fine now

  10. gabearnold

    Thanks! This is simple and a nice tip I didn’t know.

  11. AlexAmelines

    it works for me and I love you for it. I created a link to each pos type I’ve got, but in the RSS reader they are all called the same, any way I can affect the title of the feed to reflect the post type?

  12. Alan

    If I am using a slug re-write for the taxonomy that wouldn’t make a difference and be causing the problem would it? I’ve tried both ways and it doesn’t work either way, with the actual registered taxonomy title or the slug.

  13. Alan

    That doesn’t seem to work with the taxonomies.

  14. Aldi

    I can’t seem to make that work. It only takes me back to the custom post type archive page again.

    Btw, I use Custom Post Permalinks plugin to allow custom post type permalinks and archive pages. Could that have created the issue??

    Cheers!

    • Aldi

      Oops, sorry.. it was my theme’s problem. I had an action call to redirect anything that is related to custom post types, thus the redirection of the feeds. But got it fixed now.

Deixe uma resposta

Obrigado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossos política de comentários, e seu endereço de e-mail NÃO será publicado. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.