WordPress: estrarre la prima immagine dal contenuto dei post

In alcuni casi potrebbe essere utile reperire la prima immagine inserita nel contenuto di un post di WordPress. Vediamo come fare.

La seguente funzione usa le espressioni regolari per estrarre la prima immagine dal contenuto del post:


function get_the_first_image() {
  global $post;
  $first_img = '';
  $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  $first_img = $matches [1] [0];

  if(empty($first_img)){ // Immagine predefinita
    $first_img = "/images/default.jpg";
  }
  return $first_img;
}

Si tratta di una funzione generica che può ad esempio essere utilizzata nei filtri di WordPress (per esempio the_content).