it-swarm-es.com

¿Cambiar el tamaño de las imágenes al tamaño real utilizado en el editor?

¿Hay una manera de cambiar el tamaño de las imágenes al tamaño real que se mostrarán en la publicación? Tengo usuarios que importan una imagen grande y luego la redimensionan en el editor visual. Esto es fácil, ya que solo pueden arrastrar la imagen hasta el tamaño que desean, sin abrir primero un editor de imágenes, cambiar el tamaño de la imagen, guardarla y cargarla como un archivo adjunto separado. Por supuesto, esto a veces da como resultado una imagen de 100 px de ancho en la publicación, pero 1500 px en realidad.

¿Hay algún complemento que haga esto cuando se guarda una nueva publicación? Me gustaría mantener la imagen de tamaño completo existente (para vincular, o cambiar el tamaño más adelante), pero solo agregar un tamaño adicional (y guardarlo en el objeto _wp_attachment_metadata), por lo que esta publicación tiene la imagen en el tamaño correcto y una referencia. al archivo adjunto de tamaño completo.

Por supuesto, todas las publicaciones existentes también deben manejarse una vez. Las etiquetas <img> pueden tener solo una width, solo una height, o ninguna de ellas: todo esto debe limpiarse, para que todos tengan la correcta width, height y una imagen de ese tamaño.

20
Jan Fabry

Creé dos complementos que juntos deberían resolver mis necesidades. Actualmente se encuentran en una etapa alfa temprana, y todos los comentarios son bienvenidos.

El complemento básico es un On-Demand Resizer . Estos complementos monitorean las solicitudes de archivos no existentes en el directorio de cargas y crean imágenes del tamaño solicitado si es necesario. Por ejemplo, image-200x100.jpg creará y devolverá image.jpg, pero se redimensionará a 200 por 100 píxeles. La imagen se guarda con ese nombre en el directorio, por lo que el servidor gestiona las solicitudes directamente.

El segundo complemento, Redimensionar etiquetas img , modifica las etiquetas <img> para que sus atributos src incluyan datos de ancho y/o altura. Esto permite que el primer complemento sirva las imágenes correctas. Juntos hacen lo que quiero, y solo necesito crear una función de ejecución única para convertir todas las publicaciones existentes, pero eso debería ser fácil (no quiero enlazar con the_content para algo que debería ejecutarse solo una vez).

Un tercer complemento "extra", Imágenes intermedias virtuales , intercepta la creación de las imágenes intermedias al cargar una nueva imagen en WordPress. Dado que aún se crean con el primer complemento si se solicita, esto le permite especificar múltiples tamaños de imagen sin ocupar espacio en el disco a menos que se utilicen realmente. Esto no es necesario para que funcionen los dos primeros, pero fue una adición fácil, y destaca el hecho de que todavía tengo que trabajar con el editor de imágenes de WordPress, pero lo haré cuando cree mi editor de miniaturas , que también utilizará el primer plugin.

11
Jan Fabry

He buscado en el directorio de complementos para "resize" o "crop" (esta última para otra pregunta ), y anoté mis hallazgos en una hoja de cálculo pública de Google . La búsqueda de complementos es muy confusa en sus números de resultados (la última página de la búsqueda "resize" muestra "Mostrando 145-150 de 273 complementos"), por lo que es posible que haya omitido algunos. Notas semi-relacionadas: todo el mundo parece pensar que el mundo necesita otro complemento de presentación de diapositivas. Pocos parecen darse cuenta de que content_save_pre puede ser un filtro mejor para realizar un análisis intenso que the_content.

No probé ninguno de estos complementos todavía, pero aquí hay una lista de complementos que parece hacer lo que quiero. Agregué el número de versión "Compatible hasta" en paréntesis.

Pensamientos personales: Los primeros cuatro reescriben la URL en una página dinámica (algo como /wp-content/plugins/my-plugin/image.php?src=[original src]&w=100&h=50), con diferentes formas de almacenamiento en caché. Prefiero una imagen real que se crea según sea necesario, similar al enfoque que toma ImageScaler. Sin embargo, dividiría esto (e incluiría la sugerencia de hakre en los comentarios) y primero reescribiría todas las URL de /wp-content/uploads/2010/11/image.jpg a /wp-content/uploads/2010/11/image-100x50.jpg, y luego permitiría que un script cree las imágenes faltantes. La primera solicitud de esta imagen crea la imagen, todas las solicitudes posteriores utilizan esta imagen creada. Esto también me permite dividir la funcionalidad entre diferentes complementos. Voy a publicar esta solución en una respuesta por separado.

Estos complementos limitan las imágenes a un cierto tamaño máximo (¿En qué se diferencia de especificar $content_width?):

  • JP-redise-images , comprueba tanto las imágenes de enlace dinámico como las de gran tamaño (solo si son demasiado grandes, no solo si están redimensionadas) (3.0.1)
  • Hungred Image Fit , comprueba imágenes demasiado grandes (3.0.0)

El siguiente plugin es interesante por otras razones:

Esta es una publicación de Community Wiki, por lo que puede actualizarse si encuentra nuevos complementos.

4
Jan Fabry

Wordpress ofrece tres tamaños predeterminados (pequeño, mediano, grande) que se pueden configurar. Si los usas, Wordpress crea copias redimensionadas. Probablemente sea un buen estilo usarlos y establecer el número para que se ajusten al estilo actual. Esto hace que las imágenes no tengan tamaños diferentes en toda la página y permitan ajustes globales cuando el tema cambia.

0
Raphael

El recientemente lanzado Image Pro plugin parece hacer exactamente esto. Aún no lo he probado, la demostración se ve muy impresionante, tenga en cuenta la poca compatibilidad del navegador (solo Firefox en este momento).

0
Rarst

¿Qué hay de utilizar la variable timthumb y pass para cambiar automáticamente el tamaño/dimensiones de la imagen y los niveles de zoom? De esta manera los tamaños de imagen originales todavía se pueden mantener. Si necesita algunos ejemplos en esta línea, hágamelo saber.

0
NetConstructor.com