WordPress.org

Ready to get started?Download WordPress

Codex

Attention Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

it:Riferimento funzioni/the post thumbnail

Contents

Descrizione

Mostra l'immagine in evidenza del post corrente che gli è stata associata nella sua pagina di modifica.

Questa funzione deve essere usata all'interno del loop. Si usi get_the_post_thumbnail( $id, $size, $attr ) se si vuole recuperare l'immagine in evidenza di qualunque post.

Per abilitare le immagini in evidenza, o miniature del post, il tema corrente deve includere add_theme_support( 'post-thumbnails' ); nel suo file functions.php. Si veda anche Immagini in evidenza.

Utilizzo

 <?php the_post_thumbnail$size$attr ); ?> 

Parametri

$size
(string/array) (opzionale) Dimensione dell'immagine. Può essere una stringa con parola chiave (thumbnail, medium, large, full), oppure qualunque parola chiave definita da add_image_size(), oppure un array con due elementi che rappresentano larghezza e altzza in pixel, es. array(32,32).
Default: 'post-thumbnail', che il tema imposta usando set_post_thumbnail_size.
$attr
(array) (opzionale) Array di coppie attributo/valore. Per i dettagli, si cerchi il codice sorgente della funzione su cui si basa the_post_thumbnail: wp_get_attachment_image()
Default: Nessuno
$default_attr = array(
	'src'	=> $src,
	'class'	=> "attachment-$size",
	'alt'	=> trim(strip_tags( $wp_postmeta->_wp_attachment_image_alt )),
);

Esempi

Utilizzo standard

<?php 
if ( has_post_thumbnail() ) { // controlla se il post ha un'immagine in evidenza assegnata.
  the_post_thumbnail();
} 
?>
<?php the_content(); ?>

Nota: Per restituire la miniatura in modo da usarla nel proprio codice PHP invece di stamparla a video, si usi: get_the_post_thumbnail()

Dimensioni delle miniature

Le dimensioni predefinite delle immagini di WordPress sono "thumbnail", "medium", "large" e "full" (la dimensione dell'immagine così come caricata). Queste dimensioni possono essere configurate nel pannello di amministrazione Media in Impostazioni > Media. Le dimensioni predefinite possono essere usate con get_the_post_thumbnail() nei seguenti modi:

get_the_post_thumbnail($post_id);                  // senza parametro -> miniatura

get_the_post_thumbnail($post_id, 'thumbnail');     // miniatura
get_the_post_thumbnail($post_id, 'medium');        // risoluzione media
get_the_post_thumbnail($post_id, 'large');         // risoluzione grande
get_the_post_thumbnail($post_id, 'full');          // risoluzione originale

get_the_post_thumbnail($post_id, array(100,100) ); // altre risoluzioni

Si possono registrare nuove dimensioni per le immagini in evidenza con: add_image_size().
Per impostarne la dimensione predefinita si veda: set_post_thumbnail_size().

Miniature con collegamento al permalink del post

Questo esempio mostra le ultime 5 immagini in evidenza con il collegamento al permalink del rispettivo post.

<?php 
  $thumbnails = get_posts('numberposts=5');
  foreach ($thumbnails as $thumbnail) {
    if ( has_post_thumbnail($thumbnail->ID)) {
      echo '<a href="' . get_permalink( $thumbnail->ID ) . '" title="' . esc_attr( $thumbnail->post_title ) . '">';
      echo get_the_post_thumbnail($thumbnail->ID, 'thumbnail');
      echo '</a>';
    }
  }
?>

Miniatura con collegamento all'immagine di dimensione grande

Questo esempio crea un collegamento all'immagine di dimensione grande e deve essere usato all'interno del loop.

<?php 
 if ( has_post_thumbnail()) {
   $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'large');
   echo '<a href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >';
   echo get_the_post_thumbnail($post->ID, 'thumbnail'); 
   echo '</a>';
 }
?>

Dare stile alle immagini in evidenza

Le immagini in evidenza hanno una classe di stile "wp-post-image". Hanno anche una classe che dipende dalla dimensione in cui sono mostrate. Per dare uno stile all'output si possono usare questi selettori CSS:

img.wp-post-image
img.attachment-thumbnail
img.attachment-medium
img.attachment-large
img.attachment-full

Si può anche assegnare alle miniature la propria classe. In questo esempio, viene assegnata la classe "alignleft".

<?php echo get_the_post_thumbnail($post_id, 'thumbnail', array('class' => 'alignleft')); ?>

Log delle modifiche

File sorgente

the_post_thumbnail() si trova in wp-includes/post-thumbnail-template.php.

Risorse esterne

Correlati

Immagini in evidenza: has_post_thumbnail(), the_post_thumbnail(), get_post_thumbnail_id(), get_the_post_thumbnail(), add_image_size(), set_post_thumbnail_size()

Si veda anche l'indice di Riferimento funzioni e l'indice di Tag dei template.