Incluir en tu wordpress los últimos artículos de otro blog o feed

Guardar este artículo en Delicious Compartir este artículo en Twitter Compartir este artículo en Facebook

Sino soléis pasaros por la portada, algo que suele ser habitual entre los lectores asiduos, no os habréis fijado en que ahora muestro los últimos posts que he escrito en el blog coporatvo de la empresa en la que trabajo. Es algo bastante normal cuando se escribe en diferentes sitios y se tratan temas parecidos. Yo lo muestro en la parte inferior de la portada pero se podría mostrar en cualquier otro lado, por ejemplo en el sidebar.

redes-sociales

Para hacerlo solo hay que modificar la plantilla del blog dónde queramos que aparezca. En mi caso ha sido en index.php, pero podrías hacerlo tambien sidebar.php, etc… Y haciendo uso de algunas funciones de WordPress podemos incorporarlo con sólo poner las siguientes dos líneas de código dónde queramos que aparezca:

<?php
include_once(ABSPATH . WPINC . '/rss.php');
wp_rss('http://www.berriart.com/feed/', 5);
?>

Con la primera línea incluímos la librería para manejar feeds que trae WordPress, y con la segunda le decimos de que feed queremos extraer los últimos posts. De esta manera generaremos una lista con los títulos a los últimos 5 posts del feed elegido y su correspondiente enlace.

Esta es la manera más sencilla, pero aunque podemos personalizar el estilo mediante CSS no te permite modificar el HTML que genera. Por eso yo he elegido una opción un pelín más elaborada pero que permite modificar el HTML generado y los elementos que queremos mostrar. Aún así, también hacemos uso de la misma librería.

<h2><?php
include_once(ABSPATH . WPINC . '/rss.php');
$rss = fetch_rss('http://www.berriart.com/feed/');
$maxitems = 5;
$items = array_slice($rss->items, 0, $maxitems);
?>

<ul>
<?php if (!empty($items))
foreach ( $items as $item ) : ?>
<li>
    <h4><a href='<?php echo $item['link']; ?>' title='<?php echo $item['title']; ?>'><?php echo $item['title']; ></a></h4>
    <p><?php echo $item['description']; ?></p>
</li>
<?php endforeach; ?>
</ul>

En este caso de ejemplo también se ha optado por mostrarlo con una lista, pero se puede ver como podemos personalizarlo totalmente, HTML incluido. Además se puede mostrar otra información que nos dé el feed aparte del título y el enlace, por ejemplo la descripción, la fecha, el autor,…

Aprovecho para comentar que si alguien quiere saber lo que cuento sobre redes sociales, puede hacerlo siguiendo el blog Redes Sociales, o mis posts en ese blog.

7 Comentarios
  1. Albert

    Me viene genial ya que estaba buscando la forma de mostrar las fotos que voy poniendo en mi fotoblog en mi blog principal.

    Pero en la linea 12 falta un ? al final de

    Un saludo.

  2. Albert

    Pero en la linea 12 falta un ? al final de

  3. Ruud

    esta bueno el codigo pero necesita pulirse un poco.
    felicitaciones que yo no lo hubiera podido sacar tan elaborado…
    otro detalle, falta cerrar el h2

  4. Raul

    Pero en la linea 12 falta un ? al final de

  5. Raul

    faltar cerrar un “if”

  6. Raul

    Finalamente lo he probado y no funciona, puedes poner el código verdadero!

  7. mayka

    ¿Y no hay un plugin que haga eso?

Deja un comentario