get_thumbnail_id restituisce l'immagine a dimensione intera

19 dic 2014, 10:18:31
Visualizzazioni: 18.9K
Voti: 4

Voglio ottenere una miniatura dell'immagine in evidenza dei post come URL. Quindi sto usando il seguente codice per ottenere una dimensione più piccola dell'immagine in evidenza.

$post[$i]['thumbnail'] = wp_get_attachment_url(get_post_thumbnail_id($post[$i]['id'], 'thumbnail'));

Tuttavia restituisce sempre l'immagine a dimensione intera, ho anche provato con:

$post[$i]['thumbnail'] = wp_get_attachment_url(get_post_thumbnail_id($post[$i]['id'], array(120,140)));

Ma continua a restituire l'immagine grande. Come posso risolvere?

1
Tutte le risposte alla domanda 3
1

Puoi provare a utilizzare la funzione wp_get_attachment_image_src()

$thumb_id = get_post_thumbnail_id($post[$i]['id']);
$thumb_url_array = wp_get_attachment_image_src($thumb_id, 'thumbnail', true);
$post[$i]['thumbnail'] = $thumb_url_array[0];

Nel codice sopra, wp_get_attachment_image_src() restituisce un array con src dell'immagine, altezza e larghezza, $thumb_url_array[0] è la tua miniatura.

19 dic 2014 10:36:25
Commenti

preferisco di gran lunga questa soluzione perché può essere utilizzata al di fuori di un file del tema

user1889580 user1889580
28 gen 2016 19:27:50
4

Ciao, prima aggiungi questa riga nel tuo file functions.php

add_image_size( 'custom-size', 120, 140 );

Poi richiama la dimensione personalizzata in questo modo

<?php $thumb_id = get_post_thumbnail_id( $id );
                if ( '' != $thumb_id ) {
                    $thumb_url  = wp_get_attachment_image_src( $thumb_id, 'custom-size', true );
                    $image      = $thumb_url[0];
                }?>
            <img src="<?php echo $image;?>">

Penso che funzioni correttamente

19 dic 2014 10:43:22
Commenti

ma cos'è 'thumbnail' sta restituendo anche la dimensione completa dell'immagine? non una dimensione thumbnail?

rksh rksh
19 dic 2014 10:44:06

hey la dimensione del thumbnail è definita nel pannello di amministrazione di WordPress impostazioni->media->Dimensione-thumbnail per favore controlla quale dimensione è definita in media per il thumbnail

Amit Mishra Amit Mishra
19 dic 2014 10:46:03

@amrith è impostato sul valore predefinito 150x150 ma non sto recuperando quello, sto ottenendo la dimensione completa

rksh rksh
19 dic 2014 11:14:54

hey rksh per favore controlla la risposta modificata, funziona per me

Amit Mishra Amit Mishra
19 dic 2014 11:30:25
0

La sintassi è definita come

<?php echo get_the_post_thumbnail( $post_id, $size, $attr ); ?> 

Puoi ottenere la dimensione predefinita delle miniature di WordPress (150X150) con il seguente codice:

<?php get_the_post_thumbnail( $post_id, 'thumbnail' ); ?>

Se desideri una miniatura con dimensioni personalizzate, utilizza il codice seguente:

<?php get_the_post_thumbnail( $post_id, array( 200, 200) ); ?>

Per ulteriori riferimenti, visita il codex di WordPress Clicca Qui

19 dic 2014 15:27:20