Где компонент k2 хранит свои изображения в базе данных?

Я хочу получить / запросить изображения, сохраненные компонентом joomla k2 (под вкладкой Image).

4 ответов


для отображения изображения элемента K2 вы можете использовать это

echo "media/k2/items/cache/".md5("Image".K2 ITEM ID HERE)."_XL.jpg";

Он вообще не хранится в базе данных.

они используют хэш md5 на фактическом идентификаторе элемента K2, и именно так они переименовывают и сохраняют изображение в папке media/k2/items/cache/.

везде, где элемент K2 подтягивается, они используют JFile::exists (который используется для проверки наличия файла в наборе путей) с помощью path

URL-ROOT."media/k2/items/cache/".md5("image" . K2 ITEM ID HERE)."_XL.jpg"

и если файл есть, он показывает изображение.

и _XL.jpg будут меняться в зависимости от того, какой размер изображения устанавливается для отображения на странице, будь то миниатюра, большой, XL и т. д.

Я знаю, что это не то, что вы хотели услышать, но вот как они это делают :) надеюсь, что помогает человеку!


хотя вы получили ответ, обмен информацией может быть полезен:

при работе в шаблонах K2 (HTML переопределяет) можно использовать для доступа к изображению, добавленному через вкладку K2 image.

$this->item->image

или

$this->item->imageXLarge (size you want)

вы получаете относительный url:/media/k2/items/cache/29642a1d30cebf98734fb424b2b1316b_L.jpg


вы можете найти оригиналы в каталоге media/k2/items/ src/. Также, @Дэвид правильно, "образ" нужен как приставка к К2 ID товара.