Trabalho em um portal onde outros usuários postam notícias através do K2. Essa notícias possuem imagens. Instalei o Simple Image gallery Pro v2.5.5, que é o plugin padrão para galeria de imagens no K2. O problema é que esse plugin não redimensiona as imagens, e como o volume de imagens é grande, redimensionar na mão era enviável e quanto maior o arquivo mais tempo ele demora para carregar, tornando a navegação lenta. A solução foi modificar o plugin para que o redimensionamento fosse dinâmico. Solução:
Foi modificado o arquivo helper.php localizado em plugins/content/jw_sigpro/jw_sigpro/includes. Aproximadamente na linha 248 foi inserida uma seqüência de código que redimensiona as imagens. O início e o fim da função são definidos nos comentários no próprio arquivo. O tamanho da imagem a ser gerada poder ser modificado alterando-se a variável “$largura_alvo” definida como padrão para 600(pixels).
Código:
[color=#008000:14khe03o]// OUTPUT
//Funcao que redimensiona as imagens
//Laço que varre o array com as propriedades do arquivo
foreach($gallery as $image)
{
//Guarda na variavel $imagemjpg o endreço da imagem
$imagemjpg = "/var/www/html".$image -> sourceImageFilePath;
//Define a largura da imagem
$largura_alvo = 600;
$img = imagecreatefromjpeg($imagemjpg);
$largura_original = imagesX($img);
$altura_original = imagesY($img);
//Define a altura baseada na largura
$altura_nova = (int) ($altura_original * $largura_alvo)/$largura_original;
$nova = ImageCreateTrueColor($largura_alvo,$altura_nova);
imagecopyresampled($nova, $img, 0, 0, 0, 0, $largura_alvo, $altura_nova, $largura_original, $altura_original);
//Sobrescreve a imagem, mesmo nome, mesmo diretorio
imagejpeg($nova, "/var/www/html".$image -> sourceImageFilePath);
}
//Fim da Funcao que redimensiona as imagens
return $gallery;
}[/color:14khe03o]
Espero ter ajudado!