Funzione per ottenere l'URL dell'immagine originale caricata - dimensione completa
Attualmente sto utilizzando il seguente codice per ottenere l'URL dell'immagine in evidenza di un post WordPress:
URL="<?php if (function_exists('wp_get_attachment_thumb_url')) {echo wp_get_attachment_thumb_url(get_post_thumbnail_id($post->ID), 'big-size'); }?>"
Ma il codice restituisce solo la miniatura più piccola (150x150px). Questo è quello che ottengo:
http://sitename.com/wp-content/uploads/imagename-150x150.png
La mia domanda è, come posso ottenere l'URL dell'immagine originale (immagine a dimensione completa) che sarebbe:
http://sitename.com/wp-content/uploads/imagename.png
Grazie mille per il vostro tempo e aiuto.
Ci sono quattro dimensioni predefinite integrate nel core di WordPress.
the_post_thumbnail('thumbnail'); // Miniatura (predefinita 150px x 150px max)
the_post_thumbnail('medium'); // Risoluzione media (predefinita 300px x 300px max)
the_post_thumbnail('medium_large'); // Risoluzione medio-grande (predefinita 768px x 0(altezza automatica in base al rapporto) max) dalla versione 4.4 di WP
the_post_thumbnail('large'); // Risoluzione grande (predefinita 640px x 640px max)
the_post_thumbnail('full'); // Risoluzione originale dell'immagine (non modificata)
L'ultima è quella che stai cercando.
Il seguente codice restituisce l'URL.
<?php
$src = wp_get_attachment_image_src( $attachment_id, $size, $icon );
echo $src[0];
L'intero codice può essere così:
<?php
$src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full', false );
echo $src[0]; // l'url dell'immagine in evidenza
Ulteriori informazioni possono essere trovate qui.

Grazie per la tua risposta. In realtà sto cercando una funzione che restituisca l'"URL" dell'immagine e non l'immagine stessa. Quindi dubito che the_post_thumbnail possa funzionare per questo. O forse mi sbaglio?

Ha funzionato perfettamente, grazie mille per il tuo tempo e la risposta!

Ancora rilevante nel 2022. Volevo una miniatura ma the_post_thumbnail_url()
restituiva immagini intere perché il valore predefinito del parametro è 'post-thumbnail' invece di 'thumbnail' ma il mio nuovo tema personalizzato non lo aveva. Grazie a questo elenco, ho trovato la soluzione per mostrare le miniature: <img class="post-thumb" src="<?php the_post_thumbnail_url('thumbnail') ?>">

Per coloro che arrivano qui dopo ottobre 2019
WordPress ha introdotto una "Soglia per Immagini Grandi" a partire dalla versione 5.3 (Link)
In breve, tutte le immagini sopra i 2560px verranno ridimensionate al momento del caricamento. Richiamando il formato immagine "full" non si otterrà più sempre l'immagine originale non modificata, ma potrebbe restituire quella versione da 2560px e avrà '-scaled' nell'URL e nel percorso.
È comunque possibile ottenere l'URL e il percorso delle immagini caricate originariamente con le seguenti funzioni:
wp_get_original_image_path()
o wp_get_original_image_url()
.
Sebbene la documentazione suggerisca che sia stata aggiunta una nuova dimensione "original_image"
, wp_get_attachment_image, wp_get_attachment_image_src o funzioni simili continuano a restituire la versione ridimensionata. Quindi, per quanto ne so, non c'è modo di ottenere le dimensioni originali del file, ecc.
