Como tener un Gallery como el de Ma.tt
Yo considero mi blog, mas un blog de pruebas que temático. Mas sin embargo al ver la gallerÃa de Ma.tt, empezó a buscar una manera de encontrar la forma de mostrar un thumbnail en cada “álbum” pero no la encontré. Asà que empecé a desarrollarlo.
Primero que nada, por azares del destino encontré en el código fuente de WordPress que podemos hacer que cada categorÃa tenga la forma que nosotros gustemos de mostrar los Post.
Simplemente agregamos a nuestra carpeta del Theme un archivo con la siguiente estructura en el nombre:
category-#.php
Donde # es el ID de la categorÃa. Yo copie lo que tenÃa mi Index.php
Ó si, eso facilita la vida a todo el mundo, pues podemos hacer que el Loop de Wordpress se muestre a nuestro antojo.
Primero que nada hay que “esconder” de nuestro Loop en el Index principal los post relacionados a la CategorÃa GalerÃa, podemos usar como referencia el mini-manual de query_post(), si ya escogiste una categorÃa para que no se mostrara, puede aparecer un error si no lo usas de la manera correcta para que 2 no se muestren :
query_posts(”cat=-#CATEGORY1 , -#CATEGORY2 &paged=$page”); Todo Pegado, y con “,”
Ó si, ya no debe aparecer la categorÃa uno al principio. Ahora mostrare el código fuente que vamos a agregar en nuestro archivo category-#.php
function imp_img_gallery($id){
$orderby=’menu_order ASC, ID ASC’;
$attachments = get_children(”post_parent=$id&post_type=attachment&…..
post_mime_type=image&orderby=\”{$orderby}\”");
$size=’thumbnail’;$output = “”;
foreach ( $attachments as $id => $attachment ){
$output .= wp_get_attachment_image($id, $size, true);
break;
}
return $output;
}
Y la mandamos a llamar desde el Loop de la siguiente forma:
<a href=”<?php echo wp_get_attachment_url(the_permalink()); ?>”> <? echo imp_img_gallery(intval($post->ID));?> </a>
El primer echo imprime el link en la foto de nuestro álbum, y el segundo manda a llamar a la imagen. El detalle aqui es el $post->ID, por que llamara la dirección en el que el ciclo del Loop se encuentre.
Este nos mostrara SOLO LA PRIMERA IMAGEN de nuestro Media Library, si bien, Ma.tt tiene un contador de fotos de su álbum, poemos usar el siguiente código al principio del archivo.
function obtain_total_gallery($id){
$attachments = get_children(”post_parent=$id&post_type=attachment&…..
post_mime_type=image&orderby=\”{$orderby}\”");
foreach ( $attachments as $id => $attachment ){
$i++;
}
return $i;
}
Y dentro del Loop, donde queramos que aparezca el Numero lo llamamos de la siguiente forma:
<? echo obtain_total_gallery(intval($post->ID));?>
Y es todo, el mio pueden llamarlo visitando la sección GalerÃa.
Actualización 1: Los 5 “…..” puntos, en el código, se refiere a que la linea de abajo es consecutiva, pegada lo que pasa es que el div de mi theme se salia de control.
Otros Post por Mackzter | Posted in » MiniTutoriales







Mayo 5th, 2008 at 12:28 pm
desde que puse el post :S se hizo mas angosto T___T
Mayo 7th, 2008 at 5:31 am
Que tal compa…. De pura casualidad cuando estuve checando mi ranking en ‘alianzo.com’ te encontre a ti y tu blog, y pues me llamo la atencion porque segun ‘alianzo.com’ eres de Reynosa Tamaulipas (misma ciudad donde resido yo), asi que viendo la tematica de tu blog, me encantaria saber si podemos intercambiar links ??…
Mi blog es de seguridad informatica, codigo fuente, redes, programacion y noticias informaticas de interes… Espero y puedas darte una vuelta para ver si se hace el cambalache !!…
Por cierto, lindo blog men !!…
bye bye
Junio 12th, 2008 at 9:52 am
Any chance you could translate this tutorial to English? Is it possible to change the thumbnail size from what it is set to in the admin, to show differently on this Gallery page, but show the set size on the post page? Thanks!
Junio 13th, 2008 at 6:38 am
Hi Shane, for the moment for me, its impossible to translate this tutorial because i am traveling, and of course i cant access to files for know where is the size statment.
Maybe you can search some of “variable” $size=’thumbnail’; i put this and i obtaint that size, but i can remember exist small, medium and full.
if you need help, maybe you cant comment here