viernes, septiembre 29, 2023

Convierte tu página en RSS de forma dinámica

En este artículo vamos a explicar como crear tu archivo que genere el RSS de tu sitio.

El código aqui mostrado no lo invente yo, solo lo transforme de C# a VB para tener otra versión, luego al final del artículo pondremos la fuente original donde podran ver el código en C#.

Como primer paso necesitamos saber la estructura que va a tener nuestro archivo a la hora final, el cual nos va a servir como plantilla de trabajo

Ejemplo de estructura final del archivo:

<?xml version=»1.0″ encoding=»ISO-8859-1″ ?>
<rss version=»0.91″>

<channel>
<title>Titulo de Nuestro Sitio Web</title>
<link>http://www.dotnetcr.com.com</link>
<description>Aqui podríamos poner una breve descripción de nuestro sitio</description>
<language>es-ES</language>
<copyright>2005 todos los derechos reservados</copyright>
<webMaster>webmaster@dotnetcr.com</webMaster>

<image>
<title>Imagen o Logo
<url>http://www.dotnetcr.com/logo.gif
<link>http://www.dotnetcr.com
<width>100
<height>12
</image>

<item>
<dc:creator>nombre o código del autor</dc:creator>
<title>Titulo del artículo</title>
<link>http://www.dotnetcr.com/articulo/21.html</link>
<description>
Descripcion del artículo, podría ser resumida
para obligar a nuestro lector a ir a nuestro sitio web
</description>
<pubDate>05/05/2005</pubDate>
</item>

</channel>
</rss>

Ahora expliquemos cada uno de los campos

Cabecera del archivo:
title: es el título/nombre de tu sitio web.
link: es la URL de la home de tu sitio web.
description: es una descripción corta de tu sitio.
language: es el idioma en la que está escrito tu sitio. En el caso de un sitio en inglés de Estados Unidos debería ser , español de España , español de Costa Rica , y para ver el código para otros paises aqui.

Items del archivo:
dc:creator: creador del articulo
title: Nombre del Articulo
url: direccion donde se encuentra el articulo
description: descripción breve del artículo
pubDate: fecha en que se genera el archivo

La imagen es para adornar el documento xml, y que los lectores de noticias puedan desplegarlo, no es obligatorio, solo lo usas si quieres, y el tamaño recomendado es 90 x 36 pixeles.

Ahora si, Como creamos este archivo dinámicamente?, pues aquí te doy el código fuente:

<%@ Import Namespace=DotNetCR._Conexion %>
<%@ Import Namespace=System.Data %>
<%@ Page Language=»vb» %>

<script runat=»server»>

'Load de página, aqui se llaman todos los métodos que crean el RSS
Private sub Page_Load(sender as object, e as System.EventArgs)
Dim writer as new System.Xml.XmlTextWriter( _
Response.OutputStream, _
System.Text.Encoding.UTF8)
Dim iRecursos as new Negocios.Recursos
Dim dtRecursos as DataTable
Dim drRecurso as DataRow

escribirInicioRSS(writer)
dtRecursos = iRecursos.TraerRecursosRSS.Tables(«Recursos»)

for each drRecurso in dtRecursos.Rows
agregarItemRSS(writer,drRecurso(«NombreRecurso»), _
«http://www.mipaginaweb.com/recursos.aspx?art=» & _
drRecurso(«CodigoRecurso»), _
drRecurso(«DescripcionRecurso»), _
drRecurso(«CodigoUsuario»))
next

escribirFinalRSS(writer)
writer.Flush()
writer.Close()

Response.ContentEncoding = System.Text.Encoding.UTF8
Response.ContentType = «text/xml»
Response.Cache.SetCacheability(HttpCacheability.Public)
Response.End()
end sub

'metodo que escribe los requirimientos iniciales del archivo e informacion general del canal
Private function escribirInicioRSS(writer as System.Xml.XmlTextWriter) as System.Xml.XmlTextWriter
writer.WriteStartDocument()
writer.WriteStartElement(«rss»)
writer.WriteAttributeString(«version»,»2.0″)
writer.WriteAttributeString(» target=»_blank»>link en Mentores.NET.
– Convertir página en RSS Sindicacion.net
Lista de paises y códigos permitidos
Validar nuestro archivo RSS




Roy Rojashttp://www.dotnetcr.com
Con más de 20 años de experiencia en programación, experto en lenguajes .NET, VB, C#, ASP.NET, Xamarin, XCode, DBA en SQL Server. Creador de dotnetcr.com, sitio web para programadores en español. royrojas.com | dotnetcr.com | GitHub

Redes Sociales

2,736FansMe gusta
326SeguidoresSeguir

Popular esta semana

SQL Server

Cómo saber la fecha que se modificó un procedimiento almacenado

Poder saber cuales objetos o procedimientos almacenados se modificaron recientemente es muy útil principalmente en bases de datos donde varios desarroladores tienen acceso
SQL Server MERGE

MERGE en SQL Server para Insert, Delete y Update con dos tablas

Ejemplo práctico usando MERGE para sincronizar dos tablas, Insert, Update y Delete en un solo query. Válido para SQL SERVER 2008 o superior.

Convertir String a Base64 y Base64 a String

Hemos tenido algunas consultas en estos días de cómo convertir Texto String a Base64 y viceversa, entonces decidimos hacer este pequeño ejemplo. Las funciones son...

Últimos artículos

SQL Server MERGE

MERGE in SQL Server for Insert, Delete and Update with two tables

Practical example using MERGE to synchronize two tables, Insert, Update and Delete in a single query. Valid for SQL SERVER 2008 or...

Como crear una API REST con ASP.NET Core 6.0

Crear una API REST con C# en ASP.NET es un proceso sencillo y rápido que permite exponer un conjunto de recursos a...
Machine Learning & Python

Introducción a Machine Learning en Python

Machine Learning es una rama de la inteligencia artificial que se enfoca en el desarrollo de sistemas que pueden aprender de...
SQL Server MERGE

MERGE en SQL Server, como utilizarlo de forma sencilla

El comando MERGE en SQL Server se utiliza para combinar datos de varias tablas en una sola tabla. Es útil para actualizar...