<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
        <channel>
        <title>материалы / Поиск по тегам / Русский клуб Joomla</title>
        <link>http://joomclub.net/ru/rss/tag/материалы/</link>
        <description><![CDATA[Сайт посвящен Joomla во всех ее проявлениях, мы рассказываем о шаблонах, расширениях, компонентах, плагинах и модулях]]></description>
        <language>ru</language>
        <managingEditor>tena2000@mail.ru</managingEditor>
        <webMaster>tena2000@mail.ru</webMaster>
        <generator>Alto CMS v.1.1.13</generator>
                    <item>
                <title>Добавляем ссылки к изображениям материалов в блоге</title>
                <guid isPermaLink="true">http://joomclub.net/ru/t/21/</guid>
                <link>http://joomclub.net/ru/blog/joomla25/21.html</link>
                <author>langolier@mail.ru</author>
                <description><![CDATA[<p>В Joomla! 2.5 значительно доработали стандартный компонент материалов (com_content), однако некоторых функций (по крайней мере, лично мне) не хватает. Одна из таких функций это «кликабельные» изображения материалов. Может некоторым такая функция покажется лишней, однако Я лично сталкивался с посетителями, которые безрезультатно кликали по изображнию статьи на главной или в блоге, надеясь тем самым перейти в материал и прочитать полный текст статьи. В конце концов сайты мы делаем для своих посетителей, по крайней мере свои проекты, и это заставило меня задуматься о реализации нехитрого функционала кликабельных изображений материалов Joomla! 2.5, не прибегая к сторонним расширениям… <a name="cut" rel="nofollow"></a> </p>
<p>Я встречал плагины, которые решают подобные проблемы, но на тот момент помимо необходимого мне функционала они еще добавляли Lightbox и проч., что мне совершенно не было нужно, поэтому здесь Я опишу, как нехитрой правкой кода пары файлов можно добиться необходимого функционала «кликабельных» изображений, ссылки которых по умолчанию будут вести на соответствующий материал. Сразу хочу заметить, что данная функция будет работать только для изображений материалов выбранных в поле <strong>Изображение для вступительного текста материала</strong>, находящемся в блоке <strong>Изображения и ссылки</strong> справа от редактора.</p>
<p>Итак нам понадобятся два файла: </p>
<ul><li>/templates/your_template/html/com_content/category/blog_item.php</li><li>/templates/your_template/html/com_content/featured/default_item.php</li></ul><p>Где «your_template» — Ваш шаблон. Обратите внимание, что этих файлов может не оказаться, в зависимости от шаблона. В таком случае Я рекомендую взять их из </p>
<ul><li>/components/com_content/views/category/tmpl/blog_item.php</li><li>/components/com_content/views/featured/tmpl/default_item.php</li></ul><p>… и скопировать в папки с шаблоном соответственно. Так Вы не утеряете изменения после обновления движка.</p>
<p>Теперь в файле /templates/your_template/html/com_content/category/<strong>blog_item.php</strong> мы находим вот такой код:</p>
<p><pre class="prettyprint"><code>&nbsp;&lt;?php if (isset($images-&gt;image_intro) and !empty($images-&gt;image_intro)) : ?&gt;<br />&lt;?php $imgfloat = (empty($images-&gt;float_intro))? $params-&gt;get('float_intro') : $images-&gt;float_intro; ?&gt;<br /><br />&lt;div class=&quot;img-intro-&lt;?php echo htmlspecialchars($imgfloat); ?&gt;&quot;&gt;<br />&lt;img<br />&lt;?php if ($images-&gt;image_intro_caption):<br />echo 'class=&quot;caption&quot;'.' title=&quot;' .htmlspecialchars($images-&gt;image_intro_caption).'&quot;';<br />endif; ?&gt;<br />src=&quot;/&lt;?php echo htmlspecialchars($images-&gt;image_intro); ?&gt;&quot; alt=&quot;&lt;?php echo htmlspecialchars($images-&gt;image_intro_alt); ?&gt;&quot;/&gt;<br />&lt;/div&gt;<br />&lt;?php endif; ?&gt;</code></pre></p>
<p> И заменяем его на следующий:</p>
<p><pre class="prettyprint"><code>&nbsp;&lt;?php if (isset($images-&gt;image_intro) and !empty($images-&gt;image_intro)) : ?&gt;<br />&lt;?php $imgfloat = (empty($images-&gt;float_intro)) ? $params-&gt;get('float_intro') : $images-&gt;float_intro; ?&gt;<br />&lt;div class=&quot;img-intro-&lt;?php echo htmlspecialchars($imgfloat); ?&gt;&quot;&gt;&lt;a href=&quot;/&lt;?php echo JRoute::_(ContentHelperRoute::getArticleRoute($this-&gt;item-&gt;slug, $this-&gt;item-&gt;catid)); ?&gt;&quot; &gt;<br />&lt;img<br />&lt;?php if ($images-&gt;image_intro_caption):<br />echo 'class=&quot;caption&quot;'.' title=&quot;' .htmlspecialchars($images-&gt;image_intro_caption) .'&quot;';<br />endif; ?&gt;<br />src=&quot;/&lt;?php echo htmlspecialchars($images-&gt;image_intro); ?&gt;&quot; alt=&quot;&lt;?php echo htmlspecialchars($images-&gt;image_intro_alt); ?&gt;&quot; style=&quot;width:420px;height:420px;&quot;/&gt;<br />&lt;/div&gt;&lt;/a&gt;<br />&lt;?php endif; ?&gt;</code></pre></p>
<p>В файле /templates/your_template/html/com_content/featured/<strong>default_item.php</strong> практически идентичный код файла <strong>blog_item.php</strong> заменям на следующий:</p>
<p><pre class="prettyprint"><code>&nbsp;&lt;?php if (isset($images-&gt;image_intro) and !empty($images-&gt;image_intro)) : ?&gt;<br />&lt;?php $imgfloat = (empty($images-&gt;float_intro)) ? $params-&gt;get('float_intro') : $images-&gt;float_intro; ?&gt;<br />&lt;div class=&quot;img-intro-&lt;?php echo htmlspecialchars($imgfloat); ?&gt;&quot;&gt;<br />&lt;img<br />&lt;?php if ($images-&gt;image_intro_caption):<br />echo 'class=&quot;caption&quot;'.' title=&quot;' .htmlspecialchars($images-&gt;image_intro_caption) .'&quot;';<br />endif; ?&gt;<br />src=&quot;/&lt;?php echo htmlspecialchars($images-&gt;image_intro); ?&gt;&quot; alt=&quot;&lt;?php echo htmlspecialchars($images-&gt;image_intro_alt); ?&gt;&quot;style=&quot;width:420px;height:420px;&quot;/&gt;<br />&lt;/div&gt;<br />&lt;?php endif; ?&gt;</code></pre></p>
<p> Вот собственно и все. Ссылки материалов в блогах категорий теперь «кликабельны» и ведут на материалы, к которым они и относятся.</p>
<p>Здесь же мы указываем размер выводимых изображений (<strong>style=«width:420px;height:420px;»</strong>) Эту часть кода можно убрать и изображения будут выводиться в оригинальном размере, однако в блоге, скорее всего, получится каша.</p>
<p>Если подробнее, то в блоке изображения материала мы выводим не изображение, а ссылку с изображением:</p>
<p><pre class="prettyprint"><code>&lt;a href=&quot;/&lt;?php echo JRoute::_(ContentHelperRoute::getArticleRoute($this-&gt;item-&gt;slug, $this-&gt;item-&gt;catid)); ?&gt;&quot; &gt;&lt;img...</code></pre></p>
<p>Ссылку формируем стандартными средствами Joomla! 2.5:</p>
<p><pre class="prettyprint"><code>href=&quot;/&lt;?php echo JRoute::_(ContentHelperRoute::getArticleRoute($this-&gt;item-&gt;slug, $this-&gt;item-&gt;catid)); ?&gt;&quot;</code></pre></p>
<p>И в завершении добавляем нехитрый стиль, который выводит изображения в указанном размере:</p>
<p><pre class="prettyprint"><code>style=&quot;width:420px;height:420px;&quot;</code></pre></p>
<p><a href="http://www.yazov.com/blog/joom/89-upgrade-category.html" rel="nofollow">Источник</a></p>]]></description>
                <pubDate>Thu, 13 Sep 2012 21:21:26 +0400</pubDate>
                            </item>
            </channel>
    </rss>
