Foros del Web » Programando para Internet » PHP »

Como creo un feed con el contenido de mi web (no blog)

Estas en el tema de Como creo un feed con el contenido de mi web (no blog) en el foro de PHP en Foros del Web. Buenas, mi duda es la siguiente: Tengo una pagina en modo de pruebas y actualmente lo unico que tiene es una lista con los partidos ...
  #1 (permalink)  
Antiguo 05/09/2011, 08:39
 
Fecha de Ingreso: julio-2010
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta Como creo un feed con el contenido de mi web (no blog)

Buenas,
mi duda es la siguiente:

Tengo una pagina en modo de pruebas y actualmente lo unico que tiene es una lista con los partidos que se juegan hoy y la actualizo cada día con la lista de eventos que se juegan cada día.

Quiero crear un feed en el que cada entrada del feed (titulo) sea una linia con el partido de mi pagina web (sin descripcion ni nada, solo el titulo).. pero como he intentado varias cosas y no ha habido manera.. me toca preguntar por el foro..

Miren, ahí dejo la pagina con el contenido que tiene para que vean lo que tiene y quisiera crear un feed donde cada titulo del feed fuera cada linia donde pone VER PARTIDO 1 VS 2.

Dirección: http://eventos.site90.com

Bueno no se si me habré explicado muy bien pero si no entendeis me preguntaís y os lo aclaro mejor.

Gracias por todo a toda la comunidad
  #2 (permalink)  
Antiguo 05/09/2011, 12:06
Avatar de DrFaust  
Fecha de Ingreso: septiembre-2011
Ubicación: Buenos Aires
Mensajes: 308
Antigüedad: 13 años, 2 meses
Puntos: 87
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Tu sitio web está en modo mantenimiento por posible contenido malicioso.

Los feeds en la enorme mayoría de los casos se generan a partir de información almacenada en una base de datos. La idea es que uno tiene una bd con material (noticias, por ejemplo) y la utiliza para generar un sitio web por un lado, y un feed por otro. La base de datos puede estar en un software de gestión de bases de datos (como MySQL), o ser un simple archivo de texto con información separada por tabulaciones.

Para generar un feed a partir de la información contenida en un sitio web tenés dos opciones.

La primera es utilizar un servicio que genere feeds a partir de sitios web que no lo tienen. FeedFire, por ejemplo.

La segunda es hacerlo a mano: analizar el contenido de la página web con un script PHP, extraer la información y armar el feed con ella.

Ambos métodos son increíblemente poco prácticos en comparación con almacenar la información en una base de datos y utilizarla para generar webs, feeds y demás.
  #3 (permalink)  
Antiguo 05/09/2011, 12:28
 
Fecha de Ingreso: julio-2010
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Gracias por las aclaraciones.. pero ya se el funcionamiento de los feeds.. lo que quisiera conseguir saber es si se puede conseguir de alguna manera, generar un feed dinamico con el contenido de mi pagina..

Pongo una imagen (paint rapido xD) para que veais mejor a lo que me refiero:
http://img59.imageshack.us/img59/742/webaw.jpg

Gracias
  #4 (permalink)  
Antiguo 05/09/2011, 13:50
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Como creo un feed con el contenido de mi web (no blog)

lo que quieres hacer es un rss, como lo haces tu mismo, pues le pones el contenido que quieras, es perfectamente posible
__________________
aconcaguaestudio.com
  #5 (permalink)  
Antiguo 05/09/2011, 14:16
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Bueno creo que le faltó decir de donde saca esos datos, hace tiempo le ayudé a hacer esto:

Código PHP:
Ver original
  1. <?php
  2. $xml = new SimpleXMLElement('http://www.dondepuedo.com.es/includexml.php', null, true);
  3. foreach ($xml->channel->item as $titulo) {
  4.     $eqs = explode('vs', $titulo->title);
  5.     $eq1 = $eqs[0];
  6.     $eq2 = explode(' en vivo directo', $eqs[1]);
  7.     $eq2 = $eq2[0];
  8.     echo "$eq1 vs $eq2 <br />";
  9. }

Ahora lo que quiere es hacer otro XML con los title de wordpress, eso se hace fácil con DOMDocument creando elementos e hijos y agregando uno que otro atributo.

http://www.php.net/manual/es/book.dom.php
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #6 (permalink)  
Antiguo 05/09/2011, 14:24
 
Fecha de Ingreso: julio-2010
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Cita:
Iniciado por andresdzphp Ver Mensaje
Bueno creo que le faltó decir de donde saca esos datos, hace tiempo le ayudé a hacer esto:

Código PHP:
Ver original
  1. <?php
  2. $xml = new SimpleXMLElement('http://feed', null, true);
  3. foreach ($xml->channel->item as $titulo) {
  4.     $eqs = explode('vs', $titulo->title);
  5.     $eq1 = $eqs[0];
  6.     $eq2 = explode(' en vivo directo', $eqs[1]);
  7.     $eq2 = $eq2[0];
  8.     echo "$eq1 vs $eq2 <br />";
  9. }

Ahora lo que quiere es hacer otro XML con los title de wordpress, eso se hace fácil con DOMDocument creando elementos e hijos y agregando uno que otro atributo.

http://www.php.net/manual/es/book.dom.php
Exactamente no quiero crear un feed XML con los titulos de wordpress, quiero crear el feed con los titulos que se crean con el codigo de arriba..
Bueno no se muy bien si consigo explicarme porque me estoy liando hasta yo para explicarlo..

Última edición por blogdv; 05/09/2011 a las 14:37
  #7 (permalink)  
Antiguo 05/09/2011, 14:41
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como creo un feed con el contenido de mi web (no blog)

La verdad es que no conozco como maneja los RSS wordpress, pero esto te da una idea de como hacerlo. Tampoco se entiende muy bien lo que quieres. Pero bueno. Saludos

Código PHP:
Ver original
  1. <?php
  2. $doc = new DOMDocument('1.0', 'utf-8');
  3.  
  4. //Creamos los elementos que va a tener el RSS
  5. $rss = $doc->createElement('rss');
  6. $channel = $doc->createElement('channel');
  7. $c_title = $doc->createElement('title', 'Tu sitio');
  8. $c_link = $doc->createElement('link', 'http://tuweb.com');
  9. $c_descripcion = $doc->createElement('description', 'Sitio de partidos');
  10. $c_language = $doc->createElement('language', 'es');
  11.  
  12. //Agregamos todos los hijos
  13. $doc->appendChild($rss);
  14. $rss->appendChild($channel);
  15. $channel->appendChild($c_title);
  16. $channel->appendChild($c_link);
  17. $channel->appendChild($c_descripcion);
  18. $channel->appendChild($c_language);
  19.  
  20. //Agregamos un atributo al rss
  21. $rss->setAttribute('version', '2.0');
  22.  
  23. //Esto es lo que tienes
  24. $xml = new SimpleXMLElement('http://www.dondepuedo.com.es/includexml.php', null, true);
  25. foreach ($xml->channel->item as $titulo) {
  26.     $eqs = explode('vs', $titulo->title);
  27.     $eqs1 = explode('Ver partido ', $eqs[0]);
  28.     $eq1 = $eqs1[1];
  29.     $eq2 = explode(' en vivo directo', $eqs[1]);
  30.     $eq2 = $eq2[0];
  31.     //Agregamos item y un hijo title dinámicamente
  32.     $item = $doc->createElement('item');
  33.     $i_title = $doc->createElement('title', "$eq1 vs $eq2");
  34.     $item->appendChild($i_title);
  35.     $channel->appendChild($item);
  36. }
  37.  
  38. //Guardamos el rss, manejalo como quieras aqui
  39. $m = fopen('turss.xml', 'w+');
  40. fwrite($m, $doc->saveXML());
  41. fclose($m);
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #8 (permalink)  
Antiguo 05/09/2011, 15:08
 
Fecha de Ingreso: julio-2010
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Muchas gracias andresdzphp.

Justo lo que queria conseguir.

Perfecto, gracias y saludos
  #9 (permalink)  
Antiguo 29/07/2012, 07:14
 
Fecha de Ingreso: julio-2010
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Como creo un feed con el contenido de mi web (no blog)

Siento revivir el tema, pero puesto que soy el mismo que pregunté anteriormente y ahora tengo una duda que me está volviendo loco, pregunto aqui...

Respecto el código que posteó andresdzphp, tengo ahora un problema.
El feed que quiero utilizar para pillar las entradas al crear mi feed, es este: http://feeds.feedburner.com/tVYRADIOENVIVO

El problema es que empieza directamente con el nombre del partido y deberia cortarlo justo donde dice en vivo, ja que esa palabra se repite en todos los titulos de ese feed.
Así me quedaría mi feed mostrando las palabras que aparecen justo antes del en vivo que corresponden a partidos.

Haber si existe la solucion, porque miré probé y pregunté pero sigo igual y quizá en este tema pueden ayudarme porque saben de que va el tema..

Un saludo y gracias

Etiquetas: contenido, feed
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:55.