Автоматическое создание миниатюры изображения для материала (плагин)

Рекомендую хостинг которым я пользуюсь

Оказывается, создать плагин, работающий с контентной частью Joomla, очень просто. Для этого достаточно посмотреть как устроены плагины, идущие в комплекте с установочным пакетом Joomla.

Давайте приступим непосредственно к созданию нужного нам плагина. Представьте себе что создали клиенту новый сайт на базе CMS Joomla, в котором есть раздел со статьями типа блога и у каждой статьи есть картинки, которые должны отображаться в списке статей как миниатюры (превьюшки) к этим самым статьям.

При создании и редактировании материала Joomla нам предлагает добавить к материалу минимум две картинки, не считая тех что будут находиться непосредственно в тексте статьи. Это изображения для отображения в списке материалов (категории Блога), которая должна иметь малый размер и полной версии статьи, соответственно тут картинка должна быть большой.

Все просто, не так ли? В сдали сайт клиенту, обучили его правильно наполнять сайт контентом и даже рассказали какого размера картинки и куда нужно вставлять. НО!

Но пройдет немного времени, и клиент то ли в силу своей забывчивости, то ли по ошибке иногда станет вставлять в поле с картинкой для миниатюры, изображения огромных размеров. Можно конечно восприпятствовать отображению больших картинок в оригинальном (огромном) размере в списке статей обработав их стилями CSS, но размер файла, который будет подгружаться на страницу, от этого измениться только визуально, а весить будет все те же 1мб и больше.

Можно конечно связаться с клиентом и напомнить ему о существовании Phtoshop в этот раз, и в другой раз, и еще бесчисленное количество раз, а можно просто создать плагин, который будет уменьшать изображения до нужного размера автоматически при сохранении материала.

А вот и сам плагин.

zimage_intro.xml

zimage_intro.php

Код, приведенный выше, вполне работоспособен, но не идеален и является всего-лишь отправной точкой для создания замечательного плагина, динамически создающего миниатюры для ваших статей. Стало быть Вы имеете полное право его доработать и улучшить его производительность.

Приведенный выше плагин творит свои чудеса с изображениями используя для этого событие контента onContentBeforeSave, но ничто не мешает вам поэкспериментировать с другими событиями, чтобы реализовать какой нибудь другой функционал.

События контента это очень мощный инструмент, и по сути одна из основных причин, почему автор использует при создании сайтов CMS Joomla!

Автор Matthew Mesa. Сайт автора zunostudios.com. Перевод осуществлен командой сайта Webors.in.ua

автор: Руслан Овчинников
Оценка: 1Оценка: 2Оценка: 3Оценка: 4Оценка: 5 (3 оценок, в среднем: 3,67 из 5)
Загрузка...