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.

22 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

  12. luchosar Says:

    November 21st, 2010 at 5:51 am

    Excelente tutorial. la pregunta es si deseo que salgan las fotos miniaturas que debo hacer

  13. Musti Says:

    November 21st, 2010 at 4:54 pm

    @luchosar
    Puede poner el enlace a dichas miniaturas en la primera linea o la segunda del post.

  14. Gonzalo Says:

    November 25th, 2010 at 5:56 pm

    Hola! muy bueno tu post!

    Consulta! Quiero saber si, del mismo modo se puede mostrar una imagen? Imagen relacionada con el post. Salu2!

  15. Musti Says:

    November 26th, 2010 at 9:41 am

    @Gonzalo
    Si que se puede hacer. En lugar de empezar el post con text lo empezamos con un enlace a las foto que deseamos mostrar.

  16. Rodrigo Says:

    November 30th, 2010 at 1:10 am

    Hola, cuando le trato de dar un estilo, solo lo toma al primero.
    Ayuda!

  17. Musti Says:

    November 30th, 2010 at 9:09 am

    @Rodrigo
    No entiendo cual es el problema que tiene. Puede explicarlo un poco más?

  18. Rodrigo Says:

    November 30th, 2010 at 5:09 pm

    Hola, disculpa que no te haya explicado mas.
    El asunto es este: el codigo funciona muy bien, muy lindo, pero cuando le trato de dar un estilo (como cambiarle la fuente al h1) solo se aplica al primer articulo, en lugar de aplicarse a todos los art.

  19. Musti Says:

    December 2nd, 2010 at 1:39 pm

    @Rodrigo
    Me puedes enviar la parte del CSS que estas tratando de aplicar?

  20. Pedro Says:

    December 22nd, 2010 at 8:07 pm

    Mostrar últimos posts fuera del blog (wordpress)

    Hola amigos ,les paso a comentar mi problema.
    Estoy terminando una web y en el index.php de la misma, quiero mostrar mis últimos post del blog (alojado en el mismo dominio).
    Para mostrar los post fuera del blog use el siguiente código

    <?php

    while (have_posts()): the_post();

    echo "

    ID).”‘> “;the_excerpt(); echo ‘
    ‘ ;

    endwhile; ?>

    Ahora mi problema es el siguiente.
    Yo quiero recuperar también los Thumbnails de los post , y el código que uso en el blog para mostrar los thumbnails es el siguiente .
    <img src="ID, 55, 55); ?>” alt=”" />

    Como tendría que hacer para exportar también los tumbnails fuera de mi blog ??

    Gracias por su participación

  21. gesher Says:

    May 30th, 2011 at 11:14 am

    Que buena información muchas gracias!
    tengo una pregunta, como podría ver solo entradas de una sola categoría? seria fácil escogerlas para usarlas en 2 paginas?, cada una con un tipo de contenido.

    Me gustaría ver entradas de “categoría1″ y “categoría2″, en paginas aparte.

  22. Musti Says:

    May 31st, 2011 at 4:50 pm

    Hola gesher, para mostrar entradas de una categoria determinada tienes que modificar el query o la consulta sql que esta localizada siempre antes del loop. por ejemplo: $Entradas_recientes->query(‘cat=1&showposts=5′);
    en este ejemplo cat=1 refiere al id de la categoria que quermos mostrar sus ultimos cinco entrdas, limitando el total de las entradas a mostrar de la seguiente manera: showposts=5

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>