Tecnoaficiones

Las nuevas tecnologías al alcance de todos.

Aggregator, Modulo de Drupal 7 que integra contenido sindicado (Fuentes RSS, RDF y Atom)

Sáb, 12/11/2011 - 20:07 -- A.Lliso

       ​​Aggregator​ es un modulo del núcleo de Drupal 7, el cual nos permite integrar contenido sindicado como pueden ser canales de noticias RSS, RDF y Atom. Son muchos los espacios web que proporcionan este servicio y habitualmente de forma gratuita.
 RSS son las siglas de Really Simple Syndication, un formato XML para sindicar o compartir contenido en la web. Se utiliza para difundir información actualizada frecuentemente a usuarios que se han suscrito a la fuente de contenidos.

     El formato permite distribuir contenidos sin necesidad de un navegador, utilizando un software diseñado para leer estos contenidos RSS (agregador). A pesar de eso, es posible utilizar el mismo navegador para ver los contenidos RSS. Las últimas versiones de los principales navegadores permiten leer los RSS sin necesidad de software adicional. RSS es parte de la familia de los formatos XML desarrollado específicamente para todo tipo de sitios que se actualicen con frecuencia y por medio del cual se puede compartir la información y usarla en otros sitios web o programas. A esto se le conoce como redifusión web o sindicación web (una traducción incorrecta, pero de uso muy común).

     Ahora que ya sabemos para que sirve el modulo Aggregator y que son las fuentes RSS, ​os podréis dar cuenta rápidamente del potencial del modulo, como podemos añadir fácilmente una gran cantidad de contenido actualizado a nuestro sitio, de forma automática, aprovechando el contenido sindicado de los muchos sitios que lo divulgan, como pueden ser noticias, novedades, etc..  Sin más vamos a comenzar la configuración y utilización del mismo.

  • Para su instalación al ser un modulo incorporado en el core(Nucleo) de Drupal 7, lo único que debemos hacer es ir a Modulos -> Nucleo -> Aggregator y activarlo.
  • Como siempre al instalar un modulo, asignar los permisos en Personas -> Permisos -> Aggregator, en donde encontraremos como casi siempre la opción de "Administrar canales de noticias" que al ser una administración debería tener permisos el administrador y pocos más, y la otra "Acceder a canales de noticias" que si lo que queremos es lo que lo puedan ver todos, pues habrá que darles permisos a todos.
  • Una vez activado el modulo pasaremos a su configuración yendo a ​Configuración -> Agregador de canales de noticias, encontraremos en la parte superior dos solapas, "Lista"​ y "Opciones", en la segunda podremos ajustar parámetros como numero de items, periodo de actualización, etc, que se aplicaran de forma global a todos los canales. En "Lista" es donde daremos de alta los canales en si. Entrando en esta solapa tenéis la posibilidad de agregar categorías, las cuales nos permitirán agrupar después los canales, por lo que es recomendable dar de alta primero todas las categorías que necesitemos y después los canales. Una vez tenemos las categorías clicamos en agregar canal de noticias, tendremos que asignar un título, y en url pondremos la Url del canal de noticias que nos habremos suscrito con anterioridad.
  • La subscripción a un canal es un proceso sencillo, vamos por ejemplo a www.elpais.com, y en la parte superior derecha veremos un icono rojo que pone "RSS", clicando sobre el, dependiendo del navegador tendremos diferentes comportamientos, en firefox nos permitirá agregarlo a nuestra barra de marcadores y una vez allí vamos al enlace y clic derecho, vemos las propiedades y ahí tenemos la url que necesitamos, en internet explorer directamente nos abrirá la página con el contenido RSS, con lo cual solo tenemos que copiar la dirección de la barra del navegador. En este caso del diario El país la url sería " www.elpais.com/rss/feed.html?feedId=1022 ".
  • Una vez añadido el canal y haberle asociado una categoría, a la derecha de la lista tenéis la opción de actualizar los elementos, sino los actualizamos ahora lo ara automáticamente cuando se cumpla el periodo de actualización, pero claro no veremos nada hasta entonces. Una imagen para ver por donde vamos hasta el momento.

Agregattor

  • Llegados a este punto ya la información esta en nuestro sistema, lo que nos falta es solo presentarla. Lo único que aparece inmediatamente es un enlace dentro del menú navegación por cada categoría de Rss que creasteis pero hay más.  Para cada Categoría y cada canal de noticias Aggregator habrá añadido un nuevo bloque, por lo cual para visualizarlo iremos a Bloques y como siempre en la parte inferior encontraremos los nuevos bloques, recordar que hay uno para la Categoría y otro para cada canal de forma independiente. El motivo es simple, supongamos que queremos tener las noticias de varios diarios, podríamos tener la categoría de Deportes, Internacional, etc.. si utilizamos el Bloque de la categoría nos presentaría los deportes de todos los diarios, mientras que si utilizamos los del canal de noticias de El país, veríamos los deportes solo de El país. Una vez aclarado esto solo queda colocar los bloques en la región de vuestro tema, y os saldrá un bloque con los títulos, y en la parte inferior el típico enlace de "más", clicando sobre el os abrirá una página con todos los resúmenes de los artículos, y clicando sobre el título os llevara a la noticia en su sitio original. 

Agregattor

     Ahora vamos con una pequeña personalización del módulo, si os fijáis cuando clicais en el enlace de cualquier Rss, este se abre pero en la misma ventana del navegador, cerrando nuestra web, algo que no es recomendable, al menos bajo mi humilde punto de vista. Para solucionar esto hay que editar dos archivos dentro del módulo, recordad que es un módulo del núcleo y que es algo a realizar con precaución, ósea haciendo una copia del archivo original y todas esas cosas.

     El primero que vamos a editar es el que genera los enlaces en bloque de las categorías, abriremos con un editor de texto el archivo "TuDirectorioRaiz/modules/aggregator/aggregator.module", y lo que hacemos es añadir el atributo "target = blank" que es lo que ara que se habrá en otra ventana, es lo que se ve resaltado en azul en la imagen de abajo, esto es para Drupal 7.9, en otra versión puede no coincidir la línea y algo del código, pero siguiendo las pistas de lo que esta rodeado con rojo lo encontraréis con facilidad.

Agregattor

     Y el segundo que hay que editar es el que genera la página de resúmenes que aparece  cuando clicamos el enlace "mas" desde el bloque, abriremos con el editor de textos el archivo "TuDirectorioRaiz/modules/aggregator-item.tpl.php" ​y añadiremos logicamente el mismo atributo, que es lo que se ve resaltado en azul en la imagen inferior.

Agregattor

    Y esto es todo, ahora ya podréis incorporar fuentes externas de RSS, y además sin el inconveniente de que os saque de vuestra propia web.

Comentarios

Enviado por yerita (no verificado) en
hola, muchas gracias por este tutorial!! esta buenísimo y me fue de gran ayuda, ya que soy algo nueva en drupal... pero tengo un pequeño problema nose si es q estamos usando diferentes versiones del drupal o q? pero llevo horas buscando la linea del código q hay q cambiar en aggregator.module y aun no doy con ella si pudieras sacarme de esa duda seria genial! yo estoy usando drupal 7.9 muchas gracias =)

Enviado por A.Lliso en
Hola Yerita, muchas gracias por leer el tutorial, si estas usando Drupal 7.9, es la primera foto, esa corresponde a Drupal 7.9, que es con lo que esta hecha esta web y puedes comprobar que funciona, sino has modificado nada esta en la linea 704, del archivo "aggregator.module", de hecho en drupal 6 también esta y funciona pero no coincide la linea, puedes buscar el texto de la función que hay justo encima de la linea a modificar (haciendo doble click puedes ampliar la imagen). Espero haberte ayudado si tienes algo más y podemos ayudar no lo dudes darte un saludo y decirte que si te registras tendrás acceso al chat y algún servicio más. Un saludo atento A.Lliso

Enviado por A.Lliso en
Hola Israel, en las opciones de cada rss tienes que rellenar lo del tiempo de actualización, pero aparte de esto tienes que programar un CRON automático cada X tiempo, eso lo encontraras en Configuración => Sistema => Cron. Yo lo tengo programado cada 12 horas, no se debe abusar de esto puesto que afectara al rendimiento de tu sitio. Un saludo.

Enviado por Israel (no verificado) en
Muchas gracias el tutorial me sirvio de mucha ayuda y si también configure lo del CRON, pero lo que me refiero es a constantes actualizaciones de las noticias, sin necesidad de recargar la pagina. Gracias.

Enviado por A.Lliso en
Eso no se exactamente, pero supongo que haría falta algún script, pero en cualquier caso si actualiza constantemente satura tu sitio, tambien podrias probar haciendo una vista sobre las RSS y activar Ajax en la misma, no se si funcionara se me acaba de ocurrir. Un saludo y suerte

Enviado por Alexkbra (no verificado) en
pregunta si tengo un tipo de contenido que quiero que se publique en los canales como hago para vincular esa tipo de contenido o se agrega todo el contenido ???

Enviado por A.Lliso en
Hola, supongo que lo que tu quieres es poder compartir tus propias RSS. Desconozco si hay otro método, aquí lo hemos realizado haciendo una vista del tipo "Canal de noticias". Si por ejemplo vas a "Lo mas visitado", al final abajo casi del todo te aparece el icono de las rss.

Enviado por Dani (no verificado) en
Hola No se si es demasiado tarde para preguntar, Me gustaría crear una lista de blogs sindicados que se viera en mi sitio y me gustaría lo siguiente: 1º Obtener la lista por fecha modificación, es decir los ultimos modificados se vean primeros, aparte me gustaría que no se repitiesen los blogs en esta lista, es decir si uno ha publicado 2 veces mientras que otro solo 1 salga los 2 y no salga 2 veces el que ha actualizado 2 veces 2º me gustaría añadir fotos a esta lista, es decir, una foto por cada blog sindicado, como si fuese su logotipo Sería posible estas dos opciones, Muchas gracias

Enviado por Alejandro Lliso (no verificado) en
Hola Dani, la verdad ya hace mucho de cuando hice este tutorial, y apenas recuerdo. Cuando pueda refresco el tema y si veo algo te digo.

Enviado por Dani (no verificado) en
Gracias por el interés, yo seguiré buscando y si encuentro la solucion, total o parcial la pondré en el hilo por si a alguien le viniera bien muchas gracias

Añadir nuevo comentario

CAPTCHA
Esta pregunta se hace para comprobar que es usted una persona real e impedir el envío automatizado de mensajes basura.
CAPTCHA de imagen
Introduzca los caracteres mostrados en la imagen.