Ecco un comodo hack per far in modo che quando un utente segnali un link ad una vostra pagina del blog su Facebook venga mostrata solo la prima immagine del post.

Per prima cosa dovrete modificare il file functions.php del vostro tema.

Andremo a scrivere su questo file la funzione che si occuperà di individuare la prima immagine del post e nel caso non trovasse nulla di inserire un’immagine di default a vostra scelta.

Inseriamo il codice in functions.php stando attenti a definire un path per l’eventuale immagine di default (nel nostro caso è /images/default.jpg)

function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('//i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //definisce immagine di default
$first_img = "/images/default.jpg";
}
return $first_img;
}

Appena finite le modifiche sovrascrivete il file functions.php.

Basterà ora aggiungere nel file header.php (se volete che l’immagine venga individuata su tutte le pagine del blog) o nel file single.php la seguente stringa


Ora ogni volta che qualcuno posterà un vostro link su FaceBook verrà automaticamente caricata la prima immagine del post

Se avete problemi segnalateli nei commenti

8 Commenti

  1. @paolo puoi provare a mettere .jpg al posto di * nella riga $output = preg_match_all….

    Ma devi provare… non ho tempo di farlo io adesso.
    Sorry

  2. Ciao! Un’informazione… Come potrei limitare la scelta dell’immagine ai soli file jpg, gif e png? Grazie!!