Mostrar las entradas de wordpress en otra página fuera del blog

En este  tutorial les voy a mostrar una manera muy sencilla para poder importar a una página externa los contenidos desde  nuestro blog. En este ejemplo vamos a suponer que tenemos un dominio www.su-dominio.com/  En este dominio tenemos alojada la página web principal donde queremos mostrar por ejemplo la última entrada de nuestro blog que se encuentra a su vez en otra subcarpeta bajo el mismo dominio. La ruta de nuestro blog en este ejemplo se quedrá asi: www.su-dominio.com/blog/.

Para acceder a las funcciones de wordpress desde una página externa debemos empezar con en el archivo ¨wp-blog-header.php file¨. Este archivo es el responsable para mostrar los contenidos de wordpress. Una vez este incluido dicho archivo en cualquier página de nuestro sitio web tendremos acceso a las funcciones de wordpress para mostrar los differentes contenidos del mismo.

Una cosa muy importante que hay que tener en cuenta es que esta técnica se puede aplicar solo a páginas con la extencion ¨.php¨. Vamos por ejemplo a mostrar el contenido de las tres útimas entradas de neustro blog, www.su-dominio.com/blog/,  en la página principal de nuestro sitio web, www.su-dominio.com/.

1 – el primer paso es copiar el seguiente código y pegarlo en la parte superior de la página en la que queremos mostrar las últimas entradas del blog.  En nuestro caso es www.su-dominio.com/index.php

<?php
session_start();
define('WP_USE_THEMES', false);
require('./blog/wp-blog-header.php');
query_posts('showposts=3');
?>

La primera linea del código hace que no se muestre el tema activado en wordpress. La segunda linea del código es para incluire el archive “wp-blog-header.php” del cual hemos hablado antés.  Y la ultima linea es la funccion que muestra las entradas del blog . En este ejemplo hemos asignado “3″ como parametro para mostrar las últimas tres entradas de nuestro blog.

2 - el segundo paso es copiar el seguiente código y pegarlo en la parte de la página donde se va mostrar el contendido de wordpress.

<?php while (have_posts()): the_post(); ?>

<?php endwhile; ?>

Como ven este código no muestra náda, porque es solo un loop vacio que ne tiene acciones para ejecutar. Ahora llega el momento para añadir las liñeas de código responsables para mostrar el contenido que queremos desde wordpress. Vamos a suponer que queremos mostrar los titulos de las últimas tres entradas con las primeras lineas del texto de cada entrada mas un vinculo de ¨leer más¨ que llevará a los articulos originales en las páginas del blog. Por ello añadimos las seguientes lineas de código dentro del loop ya creado . Ahora el codigo completo del loop debe ser algo asi:

<pre><?php while (have_posts()): the_post(); ?>
 <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
 <?php the_excerpt(); ?>
 <p><a href="<?php the_permalink(); ?>"><?php echo $h_2['more']; ?></a></p>
 <?php endwhile; ?></pre>

Guarde los cambios ya hechos y previsualize los resultados en el navegador. Como pueden ver, el truco de mostrar nuestros contenidos desde wordpress es bastante sencillo. Esta tarea se puede complir de otra manera a traves de RSS feed aunque esta última alternativa se limita  a importar solo los titulos junto con sus contenidos.

Espero que este tutorial os ha servido para hacer llegar vuestros contenidos a otras páginas fuera de vuestro  blog. Si tienen alguna pregunta o comentario no duden en usar el formulario de abajo.

Tags: , , , ,

Follow the responses to this entry through the RSS 2.0 feed.
You can leave a response, or trackback from your own site.

11 Responses to “Mostrar las entradas de wordpress en otra página fuera del blog”

  1. Katya Says:

    July 30th, 2009 at 10:12 pm

    Está excelente tu blog! Felicidades!

  2. Musti Says:

    July 31st, 2009 at 10:26 am

    Gracias Katya. Estoy ententando mejorarlo poco a poco.

  3. Alfredo Says:

    January 30th, 2010 at 6:15 pm

    Yo rompiendome la cabeza leyendo el xml del feed y procesandolo y después de hacerlo veo que se hace en 4 líneas.

    Gracias por el código.

  4. Danilo Says:

    February 13th, 2010 at 12:57 am

    Te pasaste, muchas gracias aclaraste muchas dudas, mira un consulta, por ejemplo, si quiero integrar el buscador que tiene wordpress en una pagina externa, y que al buscar me lleve al blog con los resultados.

    Agradeceria, me ayudaras.

    Un abrazo.

    Adios.

  5. Musti Says:

    March 13th, 2010 at 7:33 pm

    @danilo
    hola Danilo
    Gracias por tu comentario y lo siento por no poder haber contestado antes. Creo que puedes integrar el buscador que tiene wordpress en una página externa siguiendo el primer paso de este mismo tutorial y luego insertar el siguiente codigo donde quieras que aparezca el buscador de tu blog.

    <?php include (TEMPLATEPATH . '/searchform.php'); ?>
    


    Esta linea de código es la responsable de generar el formulario del buscador de wordpress.
    Inténtalo de esta manera y estoy seguro de que te va a funcionar.
    Suerte.

  6. Ramon Roca Says:

    March 24th, 2010 at 3:53 pm

    Y para rizar el rizo… hay posibilidad de hacer que muestre las entradas de una determinada categoria?
    Muchas gracias.
    Buen trabajo

  7. Musti Says:

    March 24th, 2010 at 4:25 pm

    Hola Ramon y gracias por su comentario. Según lo que entiendo usted solo quiere mostrar las entradas de una determinada categoria de las que tiene en su blog. Bueno dandole vueltas y vueltas he llegado a la conclusion que la manera más facil de hacerlo es programarlo manualmente. Es decir hacer un query para seleccionar las entradas que tienen en comun el id de la categoria que desamos mostrar. Y luego ejecutamos el query y mostramos los resultados (si hay algunos) usando un loop. Espero que te haya sirvido esta respuesta de algo auque estoy seguro que habra otra mejor opción para hacerlo.

  8. Ramon Roca Says:

    March 25th, 2010 at 11:12 am

    Efectivamente. Ya lo encontré.
    Sólo hay que añadir esta línea en el código php de la cabecera:
    query_posts(‘cat=4′);
    Cambiando el 4 por el número de categoría que nos interese.
    Así de fácil.
    Gracias.

  9. Musti Says:

    March 25th, 2010 at 12:31 pm

    Gracias Ramon por compartir su solución y me alegro de que has solucionado el problema.
    Que te vaya bien y espero poder verle de nuevo por aqui!!
    Gracias.

  10. virusmedieval Says:

    August 29th, 2010 at 8:10 am

    Hay alguna forma en que desde wordpress.com pueda jalar los post a mi sitio web?

  11. Musti Says:

    August 29th, 2010 at 2:57 pm

    Lo dudo mucho que haya alguna forma de importar las entradas desde wordpress.com a otra página web externa. Para tener esta posibilidad habra que utilizar alguna API facilitada por wordpress.com la cual creo que no existe de momento. Saludos

Leave a Reply




XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>