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

Nota editorial: Ganhamos uma comissão de links de parceiros no WPBeginner. As comissões não afetam as opiniões ou avaliações de nossos editores. Saiba mais sobre Processo editorial.

Deseja criar um feed RSS separado para cada tipo de postagem personalizada em seu site WordPress?

Os tipos de post personalizados permitem que os proprietários de sites adicionem seus próprios tipos de conteúdo exclusivos. Esses tipos de post podem ter recursos semelhantes aos de posts ou páginas, inclusive um feed RSS.

Neste artigo, mostraremos como criar facilmente um feed RSS separado para tipos de post personalizados no WordPress.

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 diferentes páginas de arquivo de seus sites.

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/

Custom post type RSS feed in WordPress

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

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 próprio 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

30 ComentáriosDeixe uma resposta

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Buddika Wijerathena says

    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 says

      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

  3. Milan says

    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 ?

  4. Tori says

    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?

      • Tori says

        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 says

          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 says

      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.

  5. Cédric Charles says

    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 !

  6. mike says

    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?

  7. Andrew says

    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?

  8. Rems says

    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

  9. AlexAmelines says

    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?

  10. Alan says

    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.

  11. Aldi says

    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 says

      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.