Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

[SOLUCIONADO] Lista miniaturas en el loop

Estas en el tema de Lista miniaturas en el loop en el foro de WordPress en Foros del Web. Buenos días. He estado buscando una función que modifique el loop de mi blog wordpress, de manera que solo muestre una lista de las miniaturas ...
  #1 (permalink)  
Antiguo 15/04/2013, 04:01
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Lista miniaturas en el loop

Buenos días.

He estado buscando una función que modifique el loop de mi blog wordpress, de manera que solo muestre una lista de las miniaturas de las entradas por categorías.

Exactamente lo que quiero implementar es:
- Una fila con 5 thumbnails de la categoría 1
- Una segunda fila de 5 thumbnails de la categoría 2
- etc...

No creo que sea tan difícil realizar el código este, pero estoy verde en PHP y no me atrevo a aventurarme yo mismo con el código, a ver si me podéis echar un cable, por favor.

Muchas gracias
  #2 (permalink)  
Antiguo 15/04/2013, 06:22
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Lista miniaturas en el loop

Para ello tendras que crear dos loops, uno para cada apartado pero podriamos ayudarte mejor si pusieras tu codigo.

Para que solo se aparezecan las imagenes, tienes que buscar en el loop y borrar el excerpt o el contenido, según lo tengas, y dejar solo las imágenes.

En el loop de wordpress las imagenes destacadas, el contenido y el excerp se muestran con el siguiente codigo.

Las imagenes (thumbnails):
Código PHP:
Ver original
  1. <?php if ( has_post_thumbnail() ) { the_post_thumbnail('thumbnail'); } ?>

El contenido:
Código PHP:
Ver original
  1. <?php the_content(); ?>

El resumen:
Código PHP:
Ver original
  1. <?php the_excerpt(); ?>

Lo de mas es darle estilos.
  #3 (permalink)  
Antiguo 15/04/2013, 07:53
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Lista miniaturas en el loop

Muchísimas gracias por la ayuda!!

Acabo de hacer un breve código que mostraría todas los títulos, thumbnail y excerpt de cada entrada. No sé si es correcto del todo.

Ahora solo me faltaría hacer un while por cada categoría, mostrando un número limitado de posts (5, por ejemplo). ¿Cómo se implementaría lo que queda de código?

Código PHP:
<div id="Contenedor">
<?php

if(have_posts()) :
    while(
have_posts()) :
        
the_post();
?>
            <div class="post" id="post-<?php the_ID(); ?>">
                <h1 class="titulo"><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1>
                <div class="postImagen">
                   <?php if ( has_post_thumbnail() ) ?>
                    <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a> <?php endif; ?>
                </div>
                <div class="postExcerpt">
                    <?php the_excerpt(); ?>
                </div>
            </div>
</div>
Gracias otra vez :)
  #4 (permalink)  
Antiguo 15/04/2013, 08:22
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Lista miniaturas en el loop

Para modificar el loop, lo mejor es crear una nueva query, que llevara los parametros que tu quieras (el numero de posts, el id de categoria...).Puedes leer sobre ello en el codex, https://codex.wordpress.org/Class_Reference/WP_Query.

Te dejo un ejemplo:

Código PHP:
Ver original
  1. $args=array(
  2.     'category__in' => $nombreCat,
  3.     'showposts'=>5,
  4.    );
  5.  
  6. $my_query = new WP_Query($args);
  7.   if( $my_query->have_posts() ) {
  8.     while ($my_query->have_posts()) : $my_query->the_post();
  9.  
  10.     ?>
  11.        
  12. (Tu codigo)
  13.    
  14.       <?php
  15.     endwhile;
  16.     wp_reset_postdata();
  #5 (permalink)  
Antiguo 16/04/2013, 06:49
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Lista miniaturas en el loop

Ante todo gracias por las molestias!

EDITO: Ya he obtenido el resultado que quería, ya solo me queda dar estilos y listo. Muchas gracias!


Dejo el código por si a alguien le resulta útil:

Código PHP:
<?php get_header(); ?>

    <div id="primary" class="site-content">
        <div id="content" role="main">
        
        <?php  /*Creamos el Query*/
        
$args=array('post_type' => 'peliculas''showposts'=> 5);
 
        
$my_query = new WP_Query($args);
        
          if( 
$my_query->have_posts() ) :
        while (
$my_query->have_posts()) : $my_query->the_post();
        
?>
        
            <div class="post" id="post-<?php the_ID(); ?>"> 
                    <h1 class="titulo"><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1> 
                    <div class="postImagen"> 
                        <?php if ( has_post_thumbnail() ) : ?> 
                        <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a> 
                        <?php endif; ?> 
                    </div> 
                    <div class="postExcerpt"> 
                        <?php the_excerpt(); ?> 
                    </div> 
            </div> 
        
        <?php    
        
endwhile;
        endif;
        
wp_reset_postdata();
        
?>
        
        
        </div><!-- #content -->
    </div><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_footer
(); ?>
Un saludo

Última edición por gastro; 16/04/2013 a las 07:02
  #6 (permalink)  
Antiguo 16/04/2013, 08:24
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Lista miniaturas en el loop

Me gustaría señalar un último inciso antes de cerrar el tema...

Estoy teniendo problemas con el tamaño de la imagen en miniatura. Utilizo la función 'the_post_thumbnail', pasando como atributo un array con el tamaño, pero después en la página me sale cada imagen con un tamaño distinto. ¿A qué se puede deber?


Aquí el código:
Código PHP:
<a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail( array(160,235) ); ?></a>
  #7 (permalink)  
Antiguo 16/04/2013, 08:38
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Lista miniaturas en el loop

Puedes crear nuevos tamaños de thumbnails poniendo en el archivo function.php el siguiente código:


Código PHP:
add_theme_support'post-thumbnails' );
add_image_size ('home','200','200',true); 
La primera función, que me imagino que ya la tienes, habilita el uso de las imagenes destacadas, y la segunda añade distintos tamaños de estas. El primer parametro de la funcion es el nombre que le asignas a ese tamaño de imagen, los dos siguientes son el ancho y el alto respectivamente y el ultimo parametro, que solo admite true o false, es si quieres que se recorte la imagen de forma proporcional o no.

Puedes leer más en el codex.

Ah! y para utilizar los nuevos tamaños debes hacerlo así:

Código PHP:
<?php the_post_thumbnail('home' ); ?>
  #8 (permalink)  
Antiguo 16/04/2013, 09:05
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Lista miniaturas en el loop

Pues no sé qué está pasando exactamente porque he añadido la función que me has puesto y no ha modificado nada.

La llamada a la función en el loop queda así:
Código PHP:
<a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail('inicio'); ?></a>
La función de functions.php así:
Código PHP:
add_image_size ('inicio',160,235false); 
Dejo una captura de pantalla para que veas lo que sale en el loop (no le hagas caso a los estilos)


Gracias de nuevo
  #9 (permalink)  
Antiguo 18/04/2013, 03:27
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 14 años, 9 meses
Puntos: 429
Respuesta: Lista miniaturas en el loop

Si he seguido correctamente el hilo, la función no te modifica lo hecho (tendrías que regenerar las miniaturas, instálate el plugin regenerate thumbnails para eso). El código debería funcionarte en las nuevas imágenes que subas.

Recuerda hacer un backup antes de los cambios.
__________________
Mi blog personal | Mi G+
  #10 (permalink)  
Antiguo 18/04/2013, 04:35
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Lista miniaturas en el loop

Cita:
Iniciado por zanguanga Ver Mensaje
Si he seguido correctamente el hilo, la función no te modifica lo hecho (tendrías que regenerar las miniaturas, instálate el plugin regenerate thumbnails para eso). El código debería funcionarte en las nuevas imágenes que subas.

Recuerda hacer un backup antes de los cambios.
Eso era exactamente lo que hacía falta, gracias!
Tras regenerar las miniaturas ya conseguí el resultado que quería.

Gracias a todos por vuestra grandísima ayuda. Espero leeros en otros pots.

Un saludo.

Etiquetas: blog, entradas, lista, loop, miniaturas, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:31.