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

Categoría en dos columnas

Estas en el tema de Categoría en dos columnas en el foro de WordPress en Foros del Web. Cita: Iniciado por lucasan Hola xiscomax , para nada, no es una tontería, es mas, es algo muy usado, tartaré de explicarme lo mejor prosible. ...
  #1 (permalink)  
Antiguo 04/07/2013, 02:09
 
Fecha de Ingreso: septiembre-2008
Ubicación: Sevilla, España
Mensajes: 124
Antigüedad: 16 años, 3 meses
Puntos: 0
Pregunta Categoría en dos columnas

Cita:
Iniciado por lucasan Ver Mensaje
Hola xiscomax, para nada, no es una tontería, es mas, es algo muy usado, tartaré de explicarme lo mejor prosible.

Debes familiarizarte con WP_Query() esta es una clase propia de Wordpress para hacer consultas a la base de datos pasando ciertos parámetros para controlar lo que obtienes.

Un ejemplo básico (tendrás que leer la documentación y experimentar para lograr exactamente lo que quieres) sería este:

Código php:
Ver original
  1. <?php
  2.  
  3. $col1 = new WP_Query("showposts=5"); //Traes los 5 posts mas recientes
  4.  
  5. if($col1->have_posts()): while($col1->have_posts()): $col1->the_post(); ?>
  6.  
  7. <div id="columna_1">
  8. //Aqui pones tu codigo para mostrar los posts, titulo, etc.
  9. </div>
  10.  
  11. <?php endwhile; else: ?>
  12.  
  13. //Aqui lo que saldría en caso de no haber posts
  14.  
  15. <?php endif; ?>
  16.  
  17. <?php
  18.  
  19. $col2 = new WP_Query("showposts=5&offset=5"); //Traes los 5 posts despues de los primeros 5, es decir, se salta los 5 primeros
  20.  
  21. if($col2->have_posts()): while($col2->have_posts()): $col2->the_post(); ?>
  22.  
  23. <div id="columna_2">
  24. //Aqui pones tu codigo para mostrar los posts, titulo, etc.
  25. </div>
  26.  
  27. <?php endwhile; else: ?>
  28.  
  29. //Aqui lo que saldría en caso de no haber posts
  30.  
  31. <?php endif; ?>

El secreto (si asi pudiera decirse) está en el uso del parámetro offset dentro de la consulta, esto hace que "saltemos" el número de posts que le indiquemos.

Para nuestro caso, tendriamos una columna con los primeros 5 posts y otra con los 5 siguientes. Así tendriamos los primeros 10 posts distribuidos en dos columnas.

Juega con eso y lee la documentación para que te enteres mucho mas.

Saludos, y espero que te haya servido.
Este código me ha venido genial para dividir los posts en 2 columnas, pero querría hacerlo solo para una categoría concreta. Este es el código que uso para mostrar una categoría en una página estática:

<?php query_posts('category_name=proyectos&post_status=p ublish,future');?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<div class="featured-image"><?php the_post_thumbnail(); ?></div>
<div class="post-excerpt"><?php the_excerpt(); ?></div>
<?php endwhile; else: endif; ?>
<?php wp_reset_query();?>

¿cómo podría hacer para que apareciesen en 2 columnas?
  #2 (permalink)  
Antiguo 04/07/2013, 07:38
Avatar de Nekko
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Buenos Aires
Mensajes: 3.141
Antigüedad: 16 años, 8 meses
Puntos: 656
Respuesta: Categoría en dos columnas

Por favor, no levantes temas muy viejos. Recordemos que hay funciones de WordPress que van quedando obsoletas y son reemplazadas por otras, así que semos cuidadosos.

showposts ya no se usa, ahora es posts_per_page. Probá el primer código haciendo el reemplazo correspondiente y para ajustarlo por categoría simplemente acudí a los conditional tags o también podés crear una plantilla sólo para la categoría de tu interés.
__________________
Taller para crear themes wordpress desde cero | Presupuestos para trabajos particulares vía MP
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 17:19.