Modificar Random Image Selector

Random Image Selector es plugin de WordPress para presentar imágenes aleatorias de un directorio determinado.

Presenta, entre sus opciones, la posibilidad de seleccionar cómo se va a redimensionar la imagen, fijando el ancho, calcula el alto; fijando el alto, calcula el ancho. La tercera opción “Constraint both width an height” fija ambas medidas.

El problema de esta última opción es, que las imágenes rectangulares (la mayoría), son deformadas para caber exactamente en el cuadrado definido por ambas medidas, como se muestra en la siguiente imagen tomada de Flickr.

gusano gusano2
Imagen original Imagen mostrada por Random Image Selector

La solución pasa por editar el archivo que se encuentra en ../wp-content/plugins/random-image-selector/randomImage.php. Entre la línea 220 y 238 ( en la versión 1.5.4) encontramos el siguiente código:

 switch($scaleOption)
    {
      case 'high':
	$ratio = $physHeight / $scaleHeight;
        $physWidth = $physWidth / $ratio;
        $physHeight = $scaleHeight;
	break;
      case 'wide':
	$ratio = $physWidth / $scaleWidth;
        $physHeight = $physHeight / $ratio;
        $physWidth = $scaleWidth;
	break;
      case 'spec':
	$physHeight = $scaleHeight;
	$physWidth = $scaleWidth;
	break;
      default:
	break;
    }

 

que deberemos sustituir por este otro:

//***********Copy from here****************
// Modificado por http://www.malditoraton.com
 switch($scaleOption)
    {
      case 'high':
	$ratio = $physHeight / $scaleHeight;
        $physWidth = $physWidth / $ratio;
        $physHeight = $scaleHeight;
	break;
      case 'wide':
	$ratio = $physWidth / $scaleWidth;
        $physHeight = $physHeight / $ratio;
        $physWidth = $scaleWidth;
	break;
      case 'spec':
	if ($physHeight < $physWidth){
	$ratio = $physWidth / $scaleWidth;
	$physWidth = $scaleWidth;
        $physHeight = $physHeight / $ratio;
	}else{
	$ratio = $physHeight / $scaleHeight;
	$physHeight = $scaleHeight;
        $physWidth = $physWidth / $ratio;
	}
	break;
      default:
	break;
    }
//**************to here************************

 

y la imagen os la devolverá perfectamente ajustada, para que quepa sin deformación en una ventana definida por las medidas para las que se ha configurado el plugin. Si preferís no editar código podeis descargar la versión completa desde este enlace random-image-selector

Tags: ,

Si te gustó esta entrada anímate a escribir un comentario o suscribirte al feed y obtener los artículos futuros en tu lector de feeds.

Comentarios

Aún no hay comentarios.

Escribe un comentario

(requerido)

(requerido)