Come prendere la prima immagine del post.
Questa semplice funzione ci permette di prendere la prima immagine inserita nel contenuto del post.
function get_first_image($ID) {
//prendo l'immagine in evidenza se esiste altrimenti tutte le img allegate al post
$feature_image = wp_get_attachment_image_src( get_post_thumbnail_id($ID), 'full');
$thumb = $feature_image[0];
if(!$thumb){
$files = get_children('post_parent='.$ID.'&post_type=attachment&post_mime_type=image');
//Get the Thumbnail URL
if($files) {
$keys = array_reverse(array_keys($files));
$j=0;
$num = $keys[$j];
$image=wp_get_attachment_image($num, 'large', false);
$imagepieces = explode('"', $image);
$imagepath = $imagepieces[1];
$thumb=wp_get_attachment_url($num);
}else {
$postcontent = wp_get_single_post($ID);
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $postcontent->post_content, $matches);
$thumb = $matches [1] [0];
}
}
if(!empty($thumb)){ //Defines a default image
print $thumb;
}
}
Questa funzione è molto utile se vogliamo personalizzare il layout del nostro tema. Spieghiamo cosa fa questa codice:
innanzitutto diciamo che questa funzione ritorna l’url dell’immagine per poi utilizzarlo a nostro piacimento ad esempio è possibile interagire con la libreria timthumb per creare delle miniature al volo.
La sequenza di questo codice è di verificare come prima cosa che il post abbia l’immagine in evidenza selezionata. In caso contrario, andiamo a selezionare tutte le immagini collegate tramite la funzione get_children e nel caso ritornasse un valore vuoto, andiamo ad analizzare ed estrarre l’immagine direttamente dal contenuto del post.




