Obtener la primer imagen de un post

Muchos de los clientes que tenemos como desarrolladores aveces piden funcionalidad que tenemos que crear y que al paso del tiempo nos deja enseñanzas de como resolver ciertos requerimientos, pus este es uno de ellos.

Tenia la necesidad de traer la primer imagen dentro del contenido del post, no la imagen destacada y esta es la solución que encontré:

Primero nos hacemos la función para detectar y traer la imagen, en caso de no tener, llamamos a una imagen predeterminada

 PHP | 
 
 copy code |
?

  1. function catch_that_image() {
  2.   global $post, $posts;
  3.   $first_img = '';
  4.   ob_start();
  5.   ob_end_clean();
  6.   $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  7.   $first_img = $matches [1] [0];
  8.   if(empty($first_img)){ //Defines a default image
  9.     $first_img = "/images/default.jpg";
  10.   }
  11.   return $first_img;
  12. }

Y por ultimo hacemos la llamada a nuestra funcion

 PHP | 
 
 copy code |
?

  1. catch_that_image()

Saludos!!

Leave a Reply

Your email address will not be published. Required fields are marked *