Miniaturas Joomla K2

K2 es, hoy dia, sin lugar a dudas la mejor extension fuera del core de Joomla! para no dudar en añadirla en nuestra web joomla! o bien en las de nuestros clientes. Lo incluye todo desde el editor para insertar archivos, imagenes sueltas y galerias. Pocas veces se tienen que hacer cambios sobre la plantilla que incluye por defecto. Pero como en toda regla, hay  excepciones, y esta es la creación de miniaturas cuadradas

La mayoría de los clientes no son capazes de crear miniaturas cuadradas, simplemente porque no tienen porque aprenderlo todo y nuestra labor como desarrolladores es hacerles la vida lo mas facil y amigable posible, como es la tarea de Joomla! en su conjunto, así que necesitamos que el sistema sea lo más amigable posible y vamos a modificarlo. Antes recordar, que
esta modificación se perderá con toda actualización k2, así que asegúrese de guardar una copia de seguridad del archivo modificado para tenerlo a mano.

Este es un breve tutorial sobre la creación de miniaturas cuadradas en K2. Vamos a hacer que las imágenes aparezcan pequeñas y cuadradas, aunque se puede aplicar a cualquier tamaño, dependera del gusto de su cliente o del propio. En este caso he puesto 180px, pero pueden mas pequeñas o mas grandes.

Esta modificación se perderá con toda actualización k2, así que asegúrese de tener a mano una copia de seguridad de este código.

Editar el archivo item.php situado en: /administrator/components/com_k2/models/

Búscar con su editor por “//Small image”

Vamos a sustituir todo el bloque de código responsable de cambiar el tamaño de la imagen.

Reemplazar este:

//Small image
$handle->image_resize = true;
$handle->image_ratio_y = true;
$handle->image_convert = 'jpg';
$handle->jpeg_quality = $params->get('imagesQuality');
$handle->file_auto_rename = false;
$handle->file_overwrite = true;
$handle->file_new_name_body = $filename.'_S';
if (JRequest::getInt('itemImageS')) {
$imageWidth = JRequest::getInt('itemImageS');
} else {
$imageWidth = $params->get('itemImageS', '180');
}
$handle->image_x = $imageWidth;
$handle->Process($savepath);

Por este bloque:

//Small image
$handle->image_resize = true;
$handle->image_convert = 'jpg';
$handle->jpeg_quality = $params->get('imagesQuality');
$handle->file_auto_rename = false;
$handle->file_overwrite = true;
$handle->file_new_name_body = $filename.'_S';
if (JRequest::getInt('itemImageS')) {
$imageWidth = JRequest::getInt('itemImageS');
} else {
$imageWidth = $params->get('itemImageS', '180');
}
$handle->image_x = $imageWidth;
$handle->image_y = $imageWidth;
$handle->image_ratio_crop = true;
$handle->Process($savepath);

Y Listo!

Ahora puedes subir tus imágenes sin tener que modificar nada. Todas las imágenes en miniatura (imágenes o conjunto de imagenes) ahora se cortaran cuadradas. La anchura y la altura coincidirá con el tamaño por defecto para el tamaño de la imagen pequeña, o el tamaño personalizado que estableció en los parámetros de la categoría.
No es que sea algo que todos lleguen a pedir, pero si es frecuente entre clientes. Vamos, que no es la primera vez qe me piden algo asi.
Espero les sirva de ayuda.
 
+ Tutoriales Joomla:
{loadposition user400}

1 comentario en «Miniaturas Joomla K2»

  1. Muy bueno y si
    Quisiera hacer algo parecido con las grandes pero quitandole altura, he añadido este codigo pero parece que no funciona:
    $handle->image_resize = true;
    $handle->image_ratio_y = true;
    $handle->image_convert = ‘jpg’;
    $handle->jpeg_quality = $params->get(‘imagesQuality’);
    $handle->file_auto_rename = false;
    $handle->file_overwrite = true;
    $handle->file_new_name_body = $filename.’_L’;
    if (JRequest::getInt(‘itemImageL’)) {
    $imageWidth = JRequest::getInt(‘itemImageL’);
    } else {
    $imageWidth = $params->get(‘itemImageL’, ‘600’);
    }
    $handle->image_x = $imageWidth;
    [b] $handle->image_y = $imageWidth/2;
    $handle->image_ratio_crop = true; [/b]
    $handle->Process($savepath);

    GRacias!!

Deja un comentario

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad