Как лучше всего обрабатывать и выводить изображения в Joomla 3x? - PullRequest
1 голос
/ 27 мая 2020

В течение многих лет я обрабатывал изображения в 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 дает мне почти все, что мне нужно, за исключением того, что оно преобразует фотографии во время загрузки, и это трудно изменить позже, потому что вам также придется изменить существующие статьи. Есть и ряд других недостатков. Возможно, вам известны альтернативы получше?

...