В течение многих лет я обрабатывал изображения в Photoshop в автономном режиме и организовывал различные преобразования на веб-сервере, используя ряд стандартов именования, чтобы отслеживать их и их связь с исходным изображением, но это невозможно навязать организациям с большим количеством пользователей. . Поэтому я пытаюсь написать расширение Joomla, которое будет хранить исходное изображение с высоким разрешением в какой-то системе управления фотографиями внутри Joomla. Затем система должна применить соответствующее преобразование во время отображения и вывести преобразованное изображение в браузер. По соображениям эффективности ему, вероятно, следует проверить, доступен ли уже локальный кеш этого конкретного преобразования.
То есть вместо записи
<img src="images/myphoto.jpg" alt="My girl" style="width:500px;height:600px;">,
Я хочу написать что-то вроде
<img src="imghandler.php?id=14&width=500px&height=600px" alt="My girl" style="width:500px;height:600px;">
(id = 14 отображение в «images / myphoto.jpg»). В конечном итоге я хочу иметь возможность написать что-то вроде этого
{image id=14,width=500px,height=600px,caption=yes /}
Это нужно заменить плагином Joomla с правильным кодом X HTML. Подписи и замещающий текст и т. Д. c. должен быть получен из базы данных или из информации EXIF на фотографии.
Я знаю, как написать плагин Joomla, и я знаю, что можно использовать плагин контента Joomla base64_encode двоичные данные для изображения и хранить его в HTML, но я понимаю, что это неэффективно по ряду причин. Лучше, чтобы веб-сервер извлекал данные изображения КАК ЕСЛИ это был файл в файловой системе, используя атрибут «sr c» тега. Но каков лучший подход? Я изучал документы и руководства Joomla по MVC и созданию компонентов в течение нескольких дней, а также изучил организацию существующих компонентов, но это меня все больше и больше сбивает с толку. Я думаю, что в нем много устаревшего кода и обходных путей, а также ряд стандартов именования (где искать код), которые я еще не выяснил.
Одна вещь, которая меня озадачивает, это то, что : Если я напишу компонент Joomla с задачей, которая позволит ему извлекать и обрабатывать изображение и выводить это изображение через представление и макет, Joomla встроит его в страницу Joomla, верно? Но это не то, что я хочу, если я использую его так: <img src="index.php?com_imagehandler&id=14"...>
. С другой стороны, если я напишу сценарий PHP отдельно от кода Joomla, который будет использоваться как этот <img src="imagehndlr.php?id=14"....>
, тогда этот сценарий должен будет жестко закрепить доступ к базе данных Joomla, библиотекам Joomla и c. и его переносимость будет NIL.
Есть мысли по этому поводу? Вероятно, доступны более профессиональные фреймворки, кроме Joomla, но я работаю в группах волонтеров с очень ограниченным бюджетом, поэтому мне приходится искать что-то бесплатное и недорогое размещение. Расширение Phoca Gallery дает мне почти все, что мне нужно, за исключением того, что оно преобразует фотографии во время загрузки, и это трудно изменить позже, потому что вам также придется изменить существующие статьи. Есть и ряд других недостатков. Возможно, вам известны альтернативы получше?