Cómo hacer una fuente RSS personalizada para su sitio web de WordPress

Una de las características de WordPress es la capacidad de desarrollar su propia fuente RSS . Estos feeds pueden incluir todo, desde publicaciones básicas hasta contenido desarrollado por un solo autor. Sin embargo, puede haber ocasiones en las que desee desarrollar una fuente RSS personalizada. Si bien hay varias formas de hacer esto, como agregar una miniatura, puede ir un poco más allá.
¿Qué sucede si desea crear un feed específico y profundizar en el tipo de contenido que entrega? Otra de las características más atractivas de WordPress es la capacidad de personalizarlo para realizar dichos cambios.
En este tutorial, le mostraremos cómo crear una fuente RSS personalizada para promocionar su material.
Tenga en cuenta que este tutorial es más para el usuario avanzado. Requiere un poco de retoques con el código y puede ser peligroso para el funcionamiento de WordPress si hay un error. Es posible que deba solucionar varios problemas si hay un error de alimentación en WordPress .
Paso 1: cree una copia de seguridad de su sitio web
Antes de realizar cualquier modificación en su sitio web, asegúrese siempre de tener una copia de seguridad. Esto se puede hacer usando herramientas como FileZilla para copiar todos sus archivos o usando complementos de copia de seguridad . En cualquier caso, debe asegurarse de tener una opción de restauración en caso de que algo salga mal.
Quizás uno de los mejores métodos es usar FileZilla. Dado que modificará los archivos directamente, una simple carga de un archivo puede ser todo lo que se necesita para reparar el sitio en caso de que algo salga mal. Por ejemplo, digamos que sucedió algo y el archivo functions.php impedía que su tema funcionara correctamente. Puede cargar fácilmente la copia del archivo functions.php para sobrescribir el que editó. Esto desharía cualquier cambio que haya realizado.
Paso 2: Creación del nuevo feed
Después de crear la copia de seguridad, debe configurar una nueva fuente RSS en WordPress. Esto se hace mediante el uso de un sistema de edición para acceder al archivo functions.php del tema de WordPress que está utilizando. Puedes hacer esto de diferentes maneras.
ArchivoZilla
Usando FileZilla, puede abrir el archivo usando un editor como el Bloc de notas en los sistemas informáticos de Windows. Hay una gran cantidad de programas de edición de texto que le permitirán cambiar la codificación de un archivo al que está accediendo.
Administrador de archivos cPanel
cPanel tiene su propio editor integrado en el sistema. Al acceder al Administrador de archivos, puede editar directamente cualquier archivo en su sitio web. Simplemente acceda a la carpeta raíz de su instalación de WordPress desde el Administrador de archivos en cPanel, seleccione el archivo functions.php y haga clic en el comando "Editar" en la barra de administración superior.
Una vez que tenga abierto el archivo functions.php, pegue el siguiente código:
add_action('init', 'customRSS');
function customRSS(){
add_feed('newfeed', 'customRSSFunc');
}
En este código, preste mucha atención a "newfeed". Este es el nombre de su nueva fuente RSS que desea utilizar. Esencialmente, se mostrará como: " https://YourWebsiteName.com/feed/newfeed ". Puede ser cualquier nombre que desee, pero deberá recordarlo, ya que lo necesitará para el siguiente paso.
Guarde el archivo y continúe, pero no lo cierre.
Paso 3: Creación de la devolución de llamada en WordPress
En el paso anterior, configuró WordPress para inicializar el feed. Ahora, debe agregar código en el archivo functions.php del tema para crear la función de devolución de llamada. Esto permitirá que WordPress cree el feed.
En el archivo functions.php, desea agregar el siguiente código:
function customRSSFunc(){
get_template_part('rss', 'newfeed');
}
[/ht_mensaje]
Nuevamente, tenga en cuenta el texto en el código para "newfeed". Este será el mismo nombre que usó antes.
Este código mantiene la nueva fuente RSS relevante para el tema específico que está utilizando. Este código "obtener" se puede modificar para vincularlo a una plantilla separada. Por ahora, vamos a mantenerlo aislado del tema actual y dejarlo así.
La parte "rss" del código anterior es el nombre del slug para el archivo que va a crear en el siguiente paso. Esto puede ser renombrado si lo desea. Sin embargo, puede ser mejor dejarlo como "rss" por ahora.
Guarde el archivo functions.php y ciérrelo.
Paso 4: Creación de la plantilla de fuente
Una vez que se completan los pasos anteriores, es hora de crear la plantilla de RSS por separado para su nuevo feed.
Cree un nuevo archivo llamado " rss.php ". Este es el archivo que buscará el código anterior con el slug, "rss". Guárdelo en la carpeta de su tema donde editó el archivo functions.php.
En este nuevo archivo, pegue el siguiente código:
<?php
/**
* Template Name: Custom RSS Template - Feedname
*/
$postCount = 5; // The number of posts to show in the feed
$posts = query_posts('showposts=' . $postCount);
header('Content-Type: '.feed_content_type('rss-http').'; charset='.get_option('blog_charset'), true);
echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>';
?>
<rss version="2.0"
xmlns_content="https://purl.org/rss/1.0/modules/content/"
xmlns_wfw="https://wellformedweb.org/CommentAPI/"
xmlns_dc="https://purl.org/dc/elements/1.1/"
xmlns_atom="https://www.w3.org/2005/Atom"
xmlns_sy="https://purl.org/rss/1.0/modules/syndication/"
xmlns_slash="https://purl.org/rss/1.0/modules/slash/"
<?php do_action('rss2_ns'); ?>>
<channel>
<title><?php bloginfo_rss('name'); ?> - Feed</title>
<atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" />
<link><?php bloginfo_rss('url') ?></link>
<description><?php bloginfo_rss('description') ?></description>
<lastBuildDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></lastBuildDate>
<language><?php echo get_option('rss_language'); ?></language>
<sy:updatePeriod><?php echo apply_filters( 'rss_update_period', 'hourly' ); ?></sy:updatePeriod>
<sy:updateFrequency><?php echo apply_filters( 'rss_update_frequency', '1' ); ?></sy:updateFrequency>
<?php do_action('rss2_head'); ?>
<?php while(have_posts()) : the_post(); ?>
<item>
<title><?php the_title_rss(); ?></title>
<link><?php the_permalink_rss(); ?></link>
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate>
<dc:creator><?php the_author(); ?></dc:creator>
<guid isPermaLink="false"><?php the_guid(); ?></guid>
<description><![CDATA[<?php the_excerpt_rss() ?>]]></description>
<content:encoded><![CDATA[<?php the_excerpt_rss() ?>]]></content:encoded>
<?php rss_enclosure(); ?>
<?php do_action('rss2_item'); ?>
</item>
<?php endwhile; ?>
</channel>
</rss>
En este código, puede modificar muchos aspectos diferentes, como el "postCount" para controlar la cantidad de publicaciones en el feed. Hay muchas modificaciones diferentes que puede realizar en esta codificación para personalizarla aún más y permitirle mostrar todo, desde imágenes de publicaciones hasta comentarios.
Guarde este archivo.
Ahora, su sitio web tiene una fuente RSS personalizada que puede modificarse para satisfacer sus necesidades. Le sugerimos que investigue los diferentes controles en la programación para agregar o eliminar materiales si desea cambiar aún más la forma en que aparece el RSS.
¿Qué pasa si actualizo mi tema?
Si realizó cambios en el tema principal en WordPress, actualizarlo puede borrar todos estos cambios. Esta es la razón por la cual muchas personas usarán temas secundarios para realizar modificaciones en sus sitios web.
Un feed personalizado puede ser muy útil si desea que su sitio sea más exclusivo. Si desea cambiar aún más cómo aparecen sus fuentes RSS, es posible que desee explorar algunos de los complementos que están disponibles. Personaliza tu sitio web y haz que se destaque de los demás dándole al feed un aspecto y una sensación completamente únicos.
¿Qué tipo de personalización ha realizado en su sitio web? ¿Utiliza la fuente RSS para compartir su contenido?