LesOlivex

Serveis informàtics




Presentar imagen aleatoria de un post en wordpress

Category : Programación, Wordpress gen 27th, 2015

Creamos shortcode de gallery con una sola imagen aleatoria sobre el post actual en single.php

// Presentar una sola imagen aleatoria del post

 $consulta_img = "SELECT ID FROM wp_posts 
    WHERE post_parent=".get_the_ID()." AND post_type like 'attachment' 
    ORDER BY RAND() LIMIT 1";

 $lista_imagenes = FALSE ;
 $resultado_img = $wpdb->get_results( $consulta_img );
 if ( count($resultado_img) != 0 ) $lista_imagenes = TRUE;

 if ( $lista_imagenes ) {

  $lista_imagenes = "";
  foreach ( $resultado_img as $fila ) { $lista_imagenes .= $fila->ID."," ; }
  $lista_imagenes = rtrim($lista_imagenes,',');

  // Galería de imágenes

  ?>
  <p>
  <div id="galeria_pais">
  <?php echo _do_shortcode('[_gallery columns="1" link="file" include="'.$lista_imagenes.'"]'); ?>
  </div>
  </p>
  <?php
}

Añado guiones bajos para que no lo interprete wordpress.


Leave a Reply

Your email address will not be published. Required fields are marked *