Tema: Feed en PHP
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/12/2012, 08:49
markos22
 
Fecha de Ingreso: mayo-2012
Mensajes: 26
Antigüedad: 12 años
Puntos: 2
Respuesta: Feed en PHP

Hola rulix no entendi bien cuando decias de identificar los q leiste, :/

mira te dejo el q uso yo, le puse algunos comentarios para q lo vallas entendiendo,
de todas maneras es solo un ejemplo para seguir, saludos espero te sirva

Código PHP:
Ver original
  1. <?php echo('<?xml version="1.0" encoding="iso-8859-1"?>');?>
  2.  
  3. <!--si tienes cargado los datos en algunos campos en tu bd, puedes listarlos aca tbm-->
  4. <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  5.    <channel>
  6.       <title>[El titulo de tu pagina]</title>
  7.       <link>[El url de tu pagina]</link>
  8.       <description>[Descripcion de tu pagina]</description>
  9.       <language>es-ES</language>
  10.       <pubDate><?php echo date('D, d M Y H:i:s O'); ?></pubDate>
  11.       <generator>[titulo] 2.0</generator>
  12.       <!-- colocas donde se encuentra el rss q estas generando-->
  13.       <atom:link href="http://www.tupagina.com/rss.xml" rel="self" type="application/rss+xml" />
  14.  
  15. <?php
  16.  
  17. //Aquí la conexión o archivo de conexión a nuestra base de datos
  18. //no coloco la funcion por q me imagino q ya lo sabes
  19. $conexion = conectarse();
  20.  
  21. //cambiamos caracteres raros con esta funcion.
  22. function cambiarcaracteres($String)
  23.     {
  24.         $String = str_replace("[äáàâãª]","a",$String);
  25.         $String = str_replace("[ÁÀÂÃÄ]","A",$String);
  26.         $String = str_replace("[ÍÌÎÏ]","I",$String);
  27.         $String = str_replace("[íìîï]","i",$String);
  28.         $String = str_replace("[éèêë]","e",$String);
  29.         $String = str_replace("[ÉÈÊË]","E",$String);
  30.         $String = str_replace("[óòôõöº]","o",$String);
  31.         $String = str_replace("[ÓÒÔÕÖ]","O",$String);
  32.         $String = str_replace("[úùûü]","u",$String);
  33.         $String = str_replace("[ÚÙÛÜ]","U",$String);
  34.         $String = str_replace("[^´`¨~]","",$String);
  35.         $String = str_replace("ç","c",$String);
  36.         $String = str_replace("Ç","C",$String);
  37.         $String = str_replace("ñ","n",$String);
  38.         $String = str_replace("Ñ","N",$String);
  39.         $String = str_replace("Ý","Y",$String);
  40.         $String = str_replace("ý","y",$String);
  41.     return $String;
  42.     }
  43.  
  44. /*********************************************/
  45. //PARA AGREGAR DATOS de la BD
  46. /*********************************************/
  47.  
  48. //Hacemos la consulta y la ordenamos por id para mostrar siempre el último
  49. $resultado=mysql_query("SELECT * FROM mi_tabla ORDER BY id DESC LIMIT 0,25",$conexion);
  50.  
  51. //Creamos un while para poder generar todos los extractos de noticias de nuestro sitio
  52. while($fila = mysql_fetch_array($resultado)){
  53.  
  54. //"Cortaremos" el artículo en 300 caracteres para hacer nuestra descripción
  55. //utilice una funcion q le coloque acortar_texto, tu si ya tienens definido en un campo la descripcion
  56. //solo no hagas caso a esta parte
  57. $descripcion = acortar_texto($fila["contenido"], 300, ' ', '…');
  58.  
  59. //defino la direccion basica osea sera  http://www.mipagina.com/items/
  60. $urlbase= "http://www.mipagina.com/items/";
  61.  
  62. //defino el titulo de la url
  63. $url1 = $fila["titulo"];
  64.  
  65. //y la url final, esto lo tengo asi por q trabajo con urls_amigables
  66. $urlfinal= $urlbase.'a.' . $fila["id"] . '.' . urls_amigables($url1);
  67.  
  68. //acomodo la fecha a mi gusto
  69. $fecha= date('D, d M Y H:i:s O', strtotime($fila["fecha"]));
  70.  
  71. //defino la imagen para mostrar con la descripcion
  72. //como estoy poniendo la urlbase recuerda q la imagen la buscara asi:http://www.mipagina.com/items/seccion1/imagen1.jpg (solo como ejemplo)
  73. $imagen= '<img src="'.$urlbase.'seccion1/'.$fila["image"].'" height="100" border="0" align="left"/>';
  74.  
  75. //titulo del canal
  76. $titulofinal = utf8_decode($fila["titulo"]);
  77.  
  78. //descripcion del canal
  79. $descripcion2 = utf8_decode($descripcion);
  80.  
  81. //ahora listo cada canal
  82. echo '
  83.     <item>
  84.     <title><![CDATA['.$titulofinal.']]></title>
  85.     <link>' . $urlfinal . '</link>
  86.     <pubDate>'.$fecha.'</pubDate>
  87.     <category><![CDATA['.$fila["tipo_doc"].']]></category>
  88.     <description><![CDATA['.$imagen.' '.$descripcion2.']]></description>
  89.     <guid isPermaLink="true"><![CDATA[' . $urlfinal . ']]></guid>
  90.     </item>
  91. ';
  92.    
  93. }//cerramos el while
  94.  
  95. mysql_free_result($resultado);
  96. mysql_close($conexion);
  97. ?>
  98.    </channel>
  99. </rss>