Mostrar los thumbnails de los posts en Wordpress 2.9

Una de las nuevas características incluidas en la nueva versión 2.9 de Wordpress es la de obtener un thumbnail o preview de una imagen para cada post sin necesidad de usar plugins adicionales. De esta forma podemos ponerle una 'carátula' que sea una imagen a cada post que escribamos en Wordpress de una forma rápida y sencilla. Lo primero que debemos tener en cuenta es que la nueva funcionalidad de Magento no extrae automáticamente las imágenes de los posts, si no que al editar la entrada hay que indicar cual es la imagen específica que va a tener como 'Miniatura de entrada'. 1.- Habilitar esta nueva funcionalidad Para habilitar estas funciones debemos incluir en el fichero functions.php unas líneas de código. Además podemos especificar tamaños adicionales a los que vienen por defecto en Wordpress y que se especifican en el administrador (thumbnail, medium y large). Pongo un código de ejemplo, que además está preparado para hacer nuestro tema compatible con versiones anteriores de Wordpress:
PHP:
  1. if ( function_exists( 'add_theme_support' ) ) { // A partir de la 2.9
  2. add_theme_support( 'post-thumbnails' );
  3. set_post_thumbnail_size( 50, 50, true ); // Especificamos el tamaño por defecto de los thumbnails
  4. add_image_size( 'thumbnail-para-la-home', 400, 9999 ); // Especificamos un tamaño específico que se llamará 'single-post-thumbnail'
  5. }

Recordad que este código funcionará sólo con las nuevas imágenes subidas. 2.- Añadir el código para que se muestre la miniatura en la plantilla de Wordpress: Para añadir el código del thumbnail del post simplemente hay que añadir estas líneas, dejando abierta la opción por si el post no tiene imagen en miniatura o no está habilitada esta función:
PHP:
  1. if (function_exists('has_post_thumbnail') && has_post_thumbnail() ) {
  2. the_post_thumbnail();
  3. } else {
  4. // ejemplo de código adicional si no hay imagen en miniatura
  5. $postimage = get_post_meta($post->ID, 'post-image', true);
  6. if ($postimage) {
  7. echo '<img src="'.$postimage.'" alt="" />';
  8. }
  9. }

Podemos pasarle como parámetro a la función the_post_thumbnail() el nombre del tamaño que queremos mostrar en pantalla. Por ejemplo, para obtener las miniaturas en los tamaños estandar de Wordpress podemos usar 'thumbnail', 'medium' o 'large':
PHP:
  1. the_post_thumbnail( 'medium');

También podemos usar los tamaños que hemos predefinido anteriormente en el fichero functions.php:
PHP:
  1. the_post_thumbnail( 'thumbnail-para-la-home');

Para añadir un estilo específico, podemos usar la siguiente clase en nuestra css:
PHP:
  1. .wp-post-image {
  2. border: 2px solid #ccc;
  3. }

3.- Controlar en detalle el código html del thumbnail del post La función que pinta la imagen en miniatura del post acepta un array como segundo parámetro cuyos valores usará luego para construir la etiqueta img. Aunque hay algunos atributos, como el título de la imagen, que se crearán automáticamente a partir de los valores de los campos que se completaron cuando se incluyó la imagen como miniatura en el post. La versatilidad de esta función la podemos ver mejor con otro ejemplo de uso:
PHP:
  1. the_post_thumbnail('medium', array('class' => 'alignleft', 'alt' => 'alttext', 'title' => 'titletext'));

4.- Añadir un thumbnail a los posts Por último sólo queda configurar los posts para que muestren la imagen en miniatura en nuestra plantilla. Esto se logra accediendo a la edición de un post, y seleccionando la imagen a mostrar (o subiendo una nueva) en el enlace del administrador que aparece a la derecha justo debajo de las categorías. También podemos especificar directamente que una imagen sea la imagen en miniatura, en la interfaz que nos muestra Wordpress cuando estamos incluyendo la imagen en el post.
<?php
2 if ( has_post_thumbnail() ) {
3 // the current post has a thumbnail
4 } else {
5 // the current post lacks a thumbnail
6 }
7 ?>

Compartir:
  • Print
  • Facebook
  • Twitter
  • Meneame
  • Google Bookmarks
  • del.icio.us
  • Digg

PROYECTOS RELACIONADOS


COMENTARIOS

[...] This post was mentioned on Twitter by onestic, Michael Davis. Michael Davis said: RT @onestic: [NUEVO POST Mostrar los thumbnails de los posts en #wordpress 2.9 http://bit.ly/7zY1db [...]


PARTICIPA EN LA CONVERSACIÓN

Introduce tu información personal o utiliza tu cuenta de twitter o facebook para acceder

   



CATEGORÍAS


C\ Trafalgar 13
46930 Quart de Poblet - Valencia - España

  • (+34) 961 139 313
  • info@onestic.com
  • (+34) 963 023 041
  • (+34) 622 858 391

HABLEMOS...

No dudes en ponerte en contacto con nosotros. Hablamos tranquilamente, te damos nuestra opinión sobre tu proyecto y decidimos cómo te podemos ayudar.

CONTACTO