03feb
16

Un modo estupendo de recuperar viejos posts para tus lectores es mostrar de algún modo posts aleatorios. Pues para eso está la función rand.

dados

Si quieres, por ejemplo, añadir un post aleatorio en tu barra lateral que cambie en cada página que se muestre solo tienes que editar tu fichero ‘sidebar.php‘ (o como se llame en tu theme) y añadir en un nuevo bloque lo siguiente:

<h3>Descubre un post cada d&iacute;a</h3>
<?php
query_posts(array('orderby' => 'rand', 'showposts' => 1));
if (have_posts()) :
     while (have_posts()) : the_post();
         the_title();
         the_excerpt();
     endwhile;
endif; ?>

Este código te mostrará 1 post en el sidebar, con el título y extracto del mismo. Si quieres mostrar mas posts solo tienes que cambiar ‘'showposts' => 1‘ por otro número que decidas, y si no quieres mostrar el extracto solo tienes que “comentar” o borrar la línea ‘the_excerpt();‘, así de sencillo.

Para saber más:

  • Pingback: Bitacoras.com

  • JuanK

    Exelente.
    Hace un tiempo quise hacer esto, pero despues se me olvido xD
    Ahora podré hacerlo :B

  • http://damse.blogspot.com ejner69

    Gracias
    Hace tiempo que queria saber esto…

    Saludos!

  • http://pitonizza.com Pitonizza

    Fernando: Quise mostrar solo el link al post aleatorio, pero me sale solo el título que no es clickeable. Quité la parte de “the excerpt” para no mostrar el extracto… Si no es abuso de confianza, puedes verlo en el sidebar de mi blog. Lo titulé “artículo al azar”.
    Gracias anticipadas. :D

  • http://pitonizza.com Pitonizza

    Lo dañé Fernando, soy experta en joder mi blog. Sé que hay que poner esto
    < a href = ” ” >seguir leyendo

    pero no sé donde. Lo que aprendí es que al ponerlo mal, el link resultante arroja un lindo error 04 y el resto de la sidebar no carga, saliendo un vergonzoso mensaje de error que evidencia mi poca destreza con el php.

  • http://www.putoslokos.com Putoslokos

    Yo consigo poner el enlace a leer más si sólamente pongo un archivo al azar, pero si pongo varios, olvídate que ya me da error :-(

  • http://STARTAHOMEBASEDBUSINESS.ORG STARTAHOMEBASEDBUSINESS

    Muchas gracias por la ayuda, estaba buscando la forma de implementar esto en mi sitio, gracias.

  • http://www.vateos.com/ Vateos

    Saludos.

    Este es el código para que funcione el enlace al post aleatorio

    ‘rand’, ‘showposts’ => 1));
    if (have_posts()) :
    while (have_posts()) : the_post();
    ?>
    <a href=>

    Espero les sea útil, saludos…

  • http://www.vateos.com/ Vateos

    Ayuda Fernando, no puedo poner el codigo de ejemplo para que los demás puedan hacer enlace a su post aleatorio

    • http://pitonizza.com Pitonizza

      Estaré pendiente de esto, me sería muy útil. Además, recomento para suscribirme a los comentarios de este post ;)

  • http://www.barriodelosrosales.es Rancilio

    A mi también me interesa el código para incluir el enlace al artículo en cuestión.

  • http://www.barriodelosrosales.es Rancilio

    Listo, el código completo con enlace y fecha de publicación sería:

    ‘rand’, ‘showposts’ => 1));
    if (have_posts()) :
    while (have_posts()) : the_post();
    ?>
    <a href=”">

  • http://www.barriodelosrosales.es Rancilio

    Vaya, no se ve bien el código. El wordpress lo corta al igual que le pasa a Vateos.

  • http://pitonizza.com Pitonizza

    Sugiero que quienes tienen el código correcto, se lo envien por mail a Fernando, como archivo adjunto de texto, para que él lo coloque en el post como texto plano, pues al poner php en el campo de comentarios se altera.

    Gracias a todos por compartir sus conocimientos. :D

  • http://stepuntob.wordpress.com/ Cwpper

    No tengo el mail de Fernando. Estoy empezando en esto de los blogs con wordpress y este sitio me ha sido de gran ayuda. Esta función me interesó muchísimo y he logrado, a través del clásico “ensayo-error” de principiante motivado, hallar el código. A mí me ha funcionado perfecto y espero que a ustedes igual…

    <h3>Descubre un post cada día<h3>
    ‘rand’, ‘showposts’ => 1));
    if (have_posts()) :
    while (have_posts()) : the_post(); ?>
    <a href=”" rel=”bookmark” class=”title”>

  • http://stepuntob.wordpress.com/ Cwpper

    Ahá…… Aquí está…
    < h3> Descubre un post cada día< /h3>
    < ?php
    query_posts(array(‘orderby’ => ‘rand’, ‘showposts’ = 1));
    if (have_posts()) :
    while (have_posts()) : the_post(); ?>
    < div class=”info”> < a href=”< ?php the_permalink() ? > ” rel=”bookmark” class=”title”> < ?php the_title(); ?> </a>
    < ?php the_excerpt();
    endwhile;
    endif;?>
    </div>