На днях дорабатывал сайт Joomla на Helix шаблоне. Одной из задач было вывести картинки в модуле "Последние новости", которые отображаются в сайдбаре.
Изображения в модуле новостей из блога Helix
Следует отметить, что в шаблоне Helix есть встроенный функционал добавления изображения для статьи. Выглядит он как на изображении ниже.
То есть, используется не стандартное изображение Joomla, а свое собственное. А значит модули, которые могли бы заменить стандартный модуль вывода новостей, типа News Show Pro GK5 и ему подобные не справятся с этой задачей.
Я попытался найти готовое решение, но нашел только обсуждение на форуме Helix 3 blog модуль новостей не отображает изображения. Данный способ скорей всего рабочий, только не для моей версии шаблона.
Итак используя информацию с форума и статьи на которую там ссылаются у меня получился такой код для shaper helix ultimate 1.1.2:
1 2 3 4 5 6 7 | <?php $image = json_decode($item->attribs, true);?> <?php if($image) : ?> <a class="item_image" href= "<?php echo $item->link; ?>"> <img src="/<?php echo $image['helix_ultimate_image'] ?>" alt="<?php echo $item->title; ?>" /> </a> <?php endif; ?> |
Вот модифицированные файлы для модулей "Материалы - Новости" и "Материалы - Последние новости"
mod_articles_latest
Разархивировать и поместить в каталог HTML шаблона helix.
Пример можно заценить на сайте https://granit-dnepr.com.ua в разделе полезная информация.
Только пришло в голову, что данная статья больше подходит для портфолио 🙂
Но это не всё...
Как добавить изображение в стандартный модуль новостей
Дальше объясню, как можно добавить изображение в стандартные модули вывода новостей для любого шаблона, который использует сходный функционал с блогом Helix.
Итак перовое, что нам нужно это в админке создать модуль последние новости и вывести его в нужной позиции на сайте.
Далее по ftp скопировать файл в который будем вносить изменения в каталог HTML вашего шаблона. В данном случае default.php из модуля mod_articles_latest (последние новости). Получится ваш_шаблон/html/mod_articles_latest/default.php.
Открываем файл и в месте где нужно вывести изображение прописываем:
1 | var_damp($item->attribs); |
После этого переходим на сайт и и обновляем страницу. В месте на котором должно быть изображение видим кучу непонятного кода. Там нужно найти что-то, что содержит в названии image, а после двоеточия ссылку на изображение. Именно эта переменная нам и нужна.
Теперь меняем код который из первой части статьи. helix_ultimate_image нужно заменить на найденную переменную. Измененный код вставляем вместо var_damp($item->attribs); Сохраняем файл и отправляемся на сайт проверять.
Если всё сделали верно, в последних новостях отобразятся картинки. Надеюсь, всё понятно объяснил. Если дочитали до конца, и не уснули - мне лайк 😉
Если что не понятно задавайте вопросы в комментариях, но отвечать не обещаю. Я стал старый и меркантильный даю консультации за деньги)))
Всем удачи! И до возможной встречи в других постах.