Hook después de subir una imagen y generar los tamaños

13 feb 2017, 23:44:56
Vistas: 14.6K
Votos: 7

Me gustaría comprimir imágenes una vez que se suben a la biblioteca multimedia. ¿Existe algún hook que se active una vez que la imagen se sube y se generan los tamaños?

0
Todas las respuestas a la pregunta 2
2
17

¿Existe algún hook que se active una vez que la imagen se ha subido y se han generado los tamaños de imagen?

wp_handle_upload se activa después de que la imagen se ha subido. Tras una pregunta de seguimiento, descubrí que las imágenes no tendrían su tamaño modificado en este punto.

add_filter( 'wp_handle_upload', 'wpse_256351_upload', 10, 2 );
function wpse_256351_upload( $upload, $context ) {
  //* Hacer algo interesante
  return $upload;
}

Añadido:

Las imágenes se redimensionan en la línea 135 de image.php. No hay hooks en el método para redimensionar las imágenes.

Al final de la función wp_generate_attachment_metadata(), se activa wp_generate_attachment_metadata. Esto ocurre después de que se han generado los tamaños de imagen.

wp_read_image_metadata es otra opción. Se activa antes de wp_generate_attachment_metadata pero después de que se han generado los tamaños de imagen.

14 feb 2017 00:07:00
Comentarios

Hmm, ¿los tamaños de imagen ya se han generado en este momento?

user1049961 user1049961
14 feb 2017 00:10:20

@user1049961 Tienes razón. Los tamaños de imagen no se generarían cuando se ejecuta wp_handle_upload. No estoy seguro en qué estaba pensando. He actualizado mi respuesta.

Nathan Johnson Nathan Johnson
14 feb 2017 01:09:34
0

Utiliza el filtro wp_generate_attachment_metadata para esto, se dispara en la función wp_generate_attachment_metadata.

15 jun 2018 20:32:16