Más allá de páginas y entradas, WordPress te permite crear tipos de contenido personalizados según las necesidades únicas de tu contenido. Por ejemplo, es posible que desee crear un tipo de contenido personalizado para reseñas de películas, productos o testimonios. Esto puede ayudarle a organizar su sitio de forma más eficaz y mejorar la experiencia del usuario.
Si quiere ir un paso más allá, también puede establecer un feed RSS para cada uno de sus tipos de contenido personalizados. Ofrecer feeds especializados a los visitantes de su sitio web les permite participar con su material de una manera más personalizada.
En esta guía, le guiaremos a través del proceso de establecer feeds RSS separados para tipos de contenido personalizados en WordPress. ¡Primeros pasos!
Creación de feeds RSS independientes para tipos de contenido personalizado en WordPress
Por defecto, WordPress genera varios feeds RSS para su sitio web.
Por ejemplo, todas las entradas recientes de su blog aparecen en el feed RSS principal de su sitio. Puede acceder a este feed añadiendo /feed/ a su nombre de dominio de la siguiente manera:
https://example.com/feed/
Lo que la mayoría de los principiantes no saben es que WordPress genera feeds RSS independientes para cada página de archivo.
Por ejemplo, dispone de feeds RSS independientes para categorías, etiquetas, autores y tipos de contenido personalizados.
Digamos que tiene un tipo de contenido personalizado llamado películas en su sitio web. Puede ver todo el contenido creado en ese tipo de entradas visitando la página de archivo del tipo de entradas:
https://example.com/movies
Para ver el feed RSS, solo tiene que añadir /feed/ a continuación de la URL del archivo de tipo de contenido personalizado.
https://example.com/movies/feed/
Alternativamente, puede ver el feed añadiendo el parámetro de tipo de entrada a su feed RSS principal de WordPress. Por ejemplo
https://example.com/feed/?post_type=movies
Esta URL solo buscará el tipo de contenido personalizado llamado películas.
Utilizamos tipos de contenido personalizados para nuestras secciones Glosario y Alojamiento WordPress. Ambos tienen feeds RSS activados y pueden ser utilizados por los usuarios que deseen suscribirse a esas secciones específicas.
Añadir un enlace al feed RSS de tipo de contenido personalizado
Ahora que ya sabe cómo acceder a los feeds RSS para cualquier tipo de contenido personalizado en su sitio web WordPress, puede utilizar esa URL para enlazar a sus feeds de tipo de contenido personalizado.
Por ejemplo, puede que desee mostrar un icono o un enlace de texto sin formato en la página de archivo del tipo de contenido personalizado para que sus visitantes puedan suscribirse fácilmente a esas entradas.
1. Añadir un enlace al feed RSS de tipo de contenido personalizado en Block Themes
Si utiliza un tema en bloque compatible con la edición completa del sitio, a continuación le indicamos cómo enlazarlo.
En primer lugar, debe añadir un fragmento de código personalizado a su sitio web de WordPress mediante el plugin WPCode.
Nota: También existe una versión gratuita de WPCode, que puedes utilizar para añadir este fragmento de código.
En primer lugar, debe instalar y activar el plugin WPCode y, a continuación, ir a la página Fragmentos de código ” + Añadir nuevo fragmento.
Desde aquí, haga clic en el botón “Usar fragmento de código” situado debajo de la opción “Añadir su código personalizado (nuevo fragmento de código)”.
En la siguiente pantalla, escriba un nombre para el fragmento de código. Puede ser cualquier cosa que le ayude a identificar el fragmento de código. A continuación, seleccione “Fragmento de código PHP” en Tipo de código.
Por último, añada el siguiente código en el cuadro Vista previa del 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');
No olvide sustituir “películas” por el nombre de su tipo de contenido personalizado.
Este es el aspecto que tendría como fragmento de código en el plugin WPCode:
Ahora activa el interruptor “Activo” y “Guarda/Actualiza” tu fragmento de código.
Este código detecta automáticamente si un usuario ve la página específica de archivo de tipo de contenido personalizado y, a continuación, muestra un enlace para suscribirse.
A continuación, crea un shortcode que puede utilizar en su tema de bloque o widgets para mostrar el enlace.
A continuación, debes visitar la página Apariencia ” Editor para iniciar el editor del sitio. Después, elige la opción Plantillas ” Archivo en el menú de la izquierda.
A continuación, añada el bloque shortcode donde desea enlazar el feed RSS.
Lo ideal es que aparezca en la parte superior, justo debajo del nombre del archivo.
Dentro del bloque Shortcode, debe añadir el siguiente shortcode:
[custom_post_type_rss_link]
Después, no olvides guardar los cambios.
Ahora puede visitar su página de archivo de tipo de contenido personalizado para ver el enlace al feed RSS en acción.
2. Añadir un enlace al feed RSS de tipo de contenido personalizado en temas clásicos
La forma más fácil de hacerlo es creando una plantilla separada para su tipo de contenido personalizado en su tema de WordPress.
Conéctese a su sitio web WordPress utilizando un cliente FTP y navegue hasta la carpeta /wp-content/themes/your-current-theme/.
Ahora, si tu tipo de contenido personalizado se llama películas, entonces puedes crear un archivo-{post_type}.php
en la carpeta de tu tema de WordPress.
Después, sólo tienes que copiar el contenido de la plantilla archive.php de tu tema y empezar a personalizar tu nueva plantilla.
Puede simplemente añadir un enlace HTML plano a su feed de archivo de tipo de entradas utilizando el siguiente código:
<p><strong>Subscribe to: <a href="https://example.com/movies/feed/">Movies</a></strong></p>
No olvide cambiar la URL por la de su tipo de entrada feed.
Ahora, el problema con este código es que usted tendrá que crear un nuevo archivo de plantilla sólo para ese tipo de entradas en particular.
El siguiente método le permitirá enlazar dinámicamente el tipo de contenido de la entrada con el feed RSS de todas sus páginas de archivo.
Simplemente añada el siguiente código al archivo de plantilla archive.php
de su 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 } ?>
Este código simplemente añadirá un enlace debajo del título de la página de archivo del tipo de entradas, animando a los usuarios a suscribirse a este tipo de contenido en particular.
Consejo extra: Añadir tipo de contenido personalizado a su feed RSS principal
Los lectores de feeds no descubren fácilmente los feeds RSS de tipo de entrada personalizado, y la mayoría de sus usuarios pueden encontrar más fácilmente el feed RSS de su sitio.
Esto significa que los usuarios suscritos a su feed RSS principal se perderán el contenido que publique en su tipo de contenido personalizado.
Puede corregirlo fácilmente añadiendo contenido de su tipo de contenido personalizado para que aparezca en el feed RSS principal de su sitio.
Para ello, deberá añadir un fragmento de código personalizado a su blog de WordPress. Le recomendamos que utilice WPCode para añadir fragmentos de código personalizados en WordPress.
En primer lugar, necesitas instalar y activar el plugin gratuito WPCode. Para más detalles, consulta nuestro artículo sobre cómo instalar un plugin de WordPress.
Una vez activado el plugin, visite la página Code Snippets ” + Add Snippet desde la barra lateral del administrador de WordPress.
A partir de aquí, debe hacer clic en el botón “Usar fragmento de código” situado debajo de la opción “Añadir su código personalizado (nuevo fragmento de código)”.
Ahora se le dirigirá a la página “Crear fragmento de código personalizado”, donde podrá empezar escribiendo un nombre para su fragmento de código.
Este nombre no se mostrará en ningún sitio y sólo se utiliza a efectos de identificación.
A continuación, elija la opción “Fragmento de código PHP” en el menú desplegable “Tipo de código” de la derecha.
Una vez hecho esto, ya puede añadir su fragmento de código personalizado.
Sólo tiene que copiar y pegar el siguiente código en el cuadro Vista previa del 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');
Después de añadir el código, escriba el nombre del tipo de contenido personalizado al lado de donde ‘[‘post_type’]’ está escrito en el código. En nuestro ejemplo, tenemos ‘entradas’, ‘películas’ y ‘libros’.
Este tipo de contenido personalizado se añadirá a su feed RSS principal de WordPress.
A continuación, desplácese hasta la parte superior de la página y cambie el conmutador “Inactivo” a “Activo”.
Por último, no olvide hacer clic en el botón “Guardar fragmento de código” para guardar o ejecutar el código en su sitio web de WordPress.
Eso es todo, el contenido de su tipo de contenido personalizado se añadirá al feed RSS principal de su sitio.
Esperamos que este artículo te haya ayudado a aprender cómo crear un feed RSS independiente para tipos de contenido personalizados en WordPress. Puede que también quieras ver nuestro tutorial sobre cómo optimizar tus feeds RSS en WordPress y nuestra selección de los mejores plugins RSS para WordPress.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
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
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 ?
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.
WPBeginner Support
Hey Tori,
Please see our guide on how to fix RSS feed Errors.
Administrador
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 !
Toni
Great tip! I almost made it from scratch! thank you!
erika
Thank you a lot! your website helped me so much
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
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?
Editorial Staff
You can combine custom post types in your main RSS feed.
https://www.wpbeginner.com/wp-tutorials/how-to-add-custom-post-types-to-your-main-wordpress-rss-feed/
Administrador
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
gabearnold
Thanks! This is simple and a nice tip I didn’t know.
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?
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.
Alan
No plugins. But I haven’t been able to figure out how to url my taxonomies with my custom post types like…
http://www.mysite.com/custompost/taxonomy/taxonmyterm
It’s just…
http://www.mysite.com/taxonomy/taxonomyterm
Would this have an effect?
Alan
That doesn’t seem to work with the taxonomies.
Editorial Staff
In our example if you notice, the genre is a taxonomy and it should work.
Administrador
Alan
Yeah, I replaced that with my own taxonomy followed by an equal sign and then one of my taxonomy terms, but it still just displayed the custom post type’s feed.
Alan
It actually redirects back to the content post type’s feed url.
Editorial Staff
Are you using any plugin to redirect this? Because this should not be happening…
Alan
No plugins. But I haven’t been able to figure out how to url my taxonomies with my custom post types like…
http://www.mysite.com/custompost/taxonomy/taxonmyterm
It’s just…
http://www.mysite.com/taxonomy/taxonomyterm
Would this have an effect?
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.