Capitulos de este wiki
  1. 1 Mini how-to para montar un resumen de prensa en una web
  2. 2 Sindicando 1 sólo feed
  3. 3 Sindicando varios feeds
  4. 4 Como utilizar LastRSS para montarte unos titulares procedentes de varios fe

Cómo montar un resumen de prensa en tu Web - Como utilizar LastRSS para montarte unos titulares procedentes de varios fe

4 - Como utilizar LastRSS para montarte unos titulares procedentes de varios fe

[editar]
Tutorial creado por t0m|ta. Extraido de: http://www.tomatoma.ws/articulo.php?topic_id=421&forum_id=34
07 de Marzo de 2006
Aquí ya tenemos que trabajar algo más, de lo que se trata, es de poder mostrar los titulares de varios sitios a la vez. Cómo tenemos muchos feeds y poco sitio, lo que vamos a hacer es guardarlos en una Base de datos y extraer aleatoriamente, un número que nosotros determinamos (en el ejemplo, 5) y mostrarlos en nuestra página. Así podemos mostrar muchos titulares, ocupando poco espacio.

En este caso tenemos que hacer varias cosas:

1) Modificar lastRSS.php para que sólo nos muestre 1 post de cada feed. Abrimos el archivo y cambiamos:

Código:
var $items_limit = 0;


por

Código:
var $items_limit = 1;

2) Creamos nuestra Base de datos:

Código:
DROP TABLE IF EXISTS `Rss_agrega`;
CREATE TABLE `Rss_agrega` (
  `id_feed` int(11) NOT NULL auto_increment,
  `nombre` varchar(150) NOT NULL default '',
  `feed` varchar(150) NOT NULL default '',
  PRIMARY KEY  (`id_feed`),
  UNIQUE KEY `feed` (`feed`)
) TYPE=MyISAM AUTO_INCREMENT=13 ;

Yo no soy una experta en Bases de datos, así que supongo que es muy mejorable pero me funciona :-)

Si necesitáis llenarla rápidamente, aquí van unos datos para rellenarla:

Código:
INSERT INTO `Rss_agrega` VALUES (1, 'El navegante', 'http://abraldes.net/feeds/naveganteblog.xml');
INSERT INTO `Rss_agrega` VALUES (2, 'No tengo palabras', 'http://www.elcuaderno.info/wp-rss2.php');
INSERT INTO `Rss_agrega` VALUES (3, 'University of Mimesota', 'http://www.d.umn.edu/itss/support/Training/Online/webdesign/webdesign.xml');
INSERT INTO `Rss_agrega` VALUES (4, 'ceck', 'http://cek.bitacoras.com/wp-rss2.php');
INSERT INTO `Rss_agrega` VALUES (5, 'David Bravo', 'http://www.filmica.com/david_bravo/index.xml');
INSERT INTO `Rss_agrega` VALUES (6, 'tomatoma', 'http://www.tomatoma.ws/bicubic/b2/wp-rss2.php');
INSERT INTO `Rss_agrega` VALUES (7, 'Alistapart', 'http://www.alistapart.com/rss.xml');
INSERT INTO `Rss_agrega` VALUES (8, 'Alzado', 'http://www.alzado.org/xml/alzado.xml');
INSERT INTO `Rss_agrega` VALUES (9, 'Blogpocket', 'http://www.blogpocket.com/index.xml');
INSERT INTO `Rss_agrega` VALUES (10, 'Artilugios', '    http://www.lacoctelera.com/artilugios/feed/rss2/');
INSERT INTO `Rss_agrega` VALUES (11, 'foros de batiburrillo.net', 'http://batiburrillo.net/foros/rss.php');
INSERT INTO `Rss_agrega` VALUES (12, 'ppbb-es', 'http://www.phpbb-es.com/foro/news_rss.php');

<b>NOTA:</b> El nombre del feed, lo ponemos para enterarnos nosotros, el script muestra el nombre que tenga puesto el propio feed

3) Nos creamos nuestro Script

Código:

<ul><?php

function ShowOneRSS($url) {
    global $rss;
    if ($rs = $rss->get($url)) {
            echo "\n";
            foreach ($rs['items'] as $item) {
                echo '<li><a href="'.$item['link'].'" title="'.$rs['title'].'">'.$item['title'].'</a></li>';
            }
            if ($rs['items_count'] <= 0) { echo "<li>Sorry, no items found in the RSS file :-(</li>"; }
            echo "\n";
    }
}

// ===============================================================================

// include lastRSS
include "lastRSS.php";

// Obtener lista de RSS de la BD

 $dbcnx = @mysql_connect("localhost", "USUARIO", "CONTRASEÑA");

  if (!$dbcnx) {   
      echo( "<p>Imposible conectar con la Base de datos</p>" );
        exit();

    }

 // Seleccionar la Base de datos de Feeds

 if (! @mysql_select_db("BASE_DE_DATOS") ) {
       echo( "\n<p>No he podido localizar la base da datos " .
        "en este momento</p>" );   
      exit(); 
   }

                $sql = "SELECT feed
                  FROM Rss_agrega
                  ORDER BY RAND( )
                  LIMIT 5 ";

            $result = @mysql_query($sql);
             if (!$result) {
               echo ("Error en la query");
               exit();
            }

               while ($row = @mysql_fetch_array($result))
             {  $rss_left[]= $row['feed']; }

// Create lastRSS object
$rss = new lastRSS;

// Show all rss files
foreach ($rss_left as $url) ShowOneRSS($url);
mysql_close();
?>
</ul>

El resultado lo podéis ver aquí: http://www.tomatoma.ws/php/clip/sindicar.php y en
nuestra página principal

PD: no puedo por menos que darle las gracias a Cluster de foros del Web, por echarme una mano con este script.
[editar]

Sé el primero en opinar


Tutoriales relacionados con 'Cómo montar un resumen de prensa en tu Web'

Desde la llegada del RSS, ofrecer un servicio de titulares de prensa en tu página... Más »

Autor y licencia de 'Cómo montar un resumen de prensa en tu Web'

Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.