1 1 1 1 1 1 1 1 1 1 Рейтинг: 2.50 - 2 отзывов

Как сделать изображение вводной части, ссылкой, ведущей на основную часть материала в Joomla3? Такая задача стояла передо мной в проекте Big.

Итак, решение вопроса по постановке ссылки с вводного изображения (того самого, с вкладки "Изображения и ссылки" Менеджера материалов) на основную часть материала (статьи).

Вводное изображение как ссылка в Joomla 3

Так же, как и в случае с простановкой ссылки с вводного текста на основную часть статьи (не путать с кнопкой "Подробнее"), ищем два файла:

 

шаблон/html/com_content/category/blog_item.php

шаблон/html/com_content/featured/default_item.php

Если их не существует, то копируем их из:

\public_html\components\com_content\views\category\tmpl\blog_item.php

\public_html\components\com_content\views\featured\tmpl\default_item.php

 

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

Дальше для Joomla 3.23.

В файле blog_item.php видим код:

<?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?>

 

Заключаем его в нужный код, получая такую комбинацию:

<a href="/<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid)); ?>"><?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?></a>

 

В файле default_item.php код выглядит сложнее:

<?php if (isset($images->image_intro) && !empty($images->image_intro)) : ?>
<?php $imgfloat = (empty($images->float_intro)) ? $params->get('float_intro') : $images->float_intro; ?>
<div class="pull-<?php echo htmlspecialchars($imgfloat); ?> item-image"> <img
<?php if ($images->image_intro_caption):
echo 'class="caption"'.' title="' .htmlspecialchars($images->image_intro_caption) .'"';
endif; ?>
src="/<?php echo htmlspecialchars($images->image_intro); ?>" alt="<?php echo htmlspecialchars($images->image_intro_alt); ?>"/> </div>
<?php endif; ?>

 

И весь этот участок кода, меняем на такой же, как и в случае с blog_item.php:

<a href="/<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid)); ?>"><?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?></a>

 

Теперь нажав на вводное изображение, посетитель попадет в основную часть материала.

 Вообще в Joomla 3 есть что доделать. например как сделать горизонтальное меню в Joomla 3, тоже не сразу понятно хотя решается довольно просто.

Иногда правда бывают сложности в определении кода, ответственного за вывод вводного изображения (в разных версиях Joomla он может быть другим).

 

Тогда есть способ номер 2. Не трогаем эти файлы:

\blog_item.php

\default_item.php,

а ищем файл:

layouts/joomla/content/intro_image.php 

и правим его, добавляя ссылку.

 

Так же как и в первом случае, делаем копию файла со всей цепочкой папок, в свой шаблон.

шаблон/html/layouts/joomla/content/intro_image.php

 

Так мы научились делать вводное изображение ссылкой на основную часть материала.

Добавить комментарий

Комментарии   
Жанна
0 # Жанна 13.11.2014 14:37
Не получается вывести ссылки как были просто изображения так и остались
Ответить
admin9zZAAZ
0 # admin9zZAAZ 18.11.2014 11:37
Цитирую Жанна:
Не получается вывести ссылки как были просто изображения так и остались

Эти все манипуляции проводятся с файлами шаблона.
Точно в том шаблоне делаете, который работает?
Ответить
Dmitry
0 # Dmitry 16.04.2016 11:26
да. именно в том шаблоне. перепроверил несколько раз. изображения, как изображения, и все.
Ответить
Рита
0 # Рита 08.04.2015 16:19
Скажите разве папка featured отвечает не за вывод избранных материалов. При таких манипуляциях изменилось отображение только избранных материалов, остальных осталось тем же
Ответить
Игорь
0 # Игорь 21.04.2015 14:04
Цитирую Рита:
Скажите разве папка featured отвечает не за вывод избранных материалов. При таких манипуляциях изменилось отображение только избранных материалов, остальных осталось тем же


там же написано про два файла:
\public_html\components\com_content\views\category\tmpl\blog_item.php
\public_html\components\com_content\views\featured\tmpl\default_item.php

один за избранное, другой за обычные разделы.
Ответить
Владимир
0 # Владимир 21.08.2015 10:07
Отлично! Спасибо! То, что нужно!
Ответить