Решил что просто выводить названия материалов во встроенном модуле "Еще статьи..." как то действительно скучновато и решил прикрутить туда отображение даты их создания с применением какого нить сss стиля. Что у меня получилось можно увидеть внизу каждого раздела этого блога, а чтобы узнать как это быстро сделать - прочитать этот небольшой выходной пост.

 

В принципе ничего сложного, на данном примере в последующем можно выводить в системный прибамбас под названием "Еще статьи..." что угодно и как угодно, но мне требовалось установить только дату, так как я видел как это работает на одном блоге и захотелось реализовать это на недавно обновленный шаблон блога.

Ну так что, для начала отредактируем отображение нашего модуля на главной странице (если вы ее используете конечно), для этого открываем файл blog_links.php из папки /components/com_content/views/frontpage/tmpl/.

<div>
<strong><?php echo JText::_( 'More Articles...' ); ?></strong>
</div>
<ul>
<?php foreach ($this->links as $link) : ?>
<li>
<a class="blogsection" href="/<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($link->slug, $link->catslug, $link->sectionid)); ?>">
<?php echo $this->escape($link->title); ?></a>
</li>
<?php endforeach; ?>
</ul>

В принципе тут ничего трудного.  JText::_( 'More Articles...' ); выводит название модуля в зависимости от языка, который использует пользователь. У нас обычно в языковом файле ru-Ru.com_content.ini переведено как "Еще статьи...". Ну а то, что заключено в тег li как раз и выводит ссылку и название материала. Чтобы вставить отображение даты нужно вставить одну команду. Добавил я всего немного, а имеено вот это в начале 8 строки:

<span><?php echo JHTML::_('date', $link->created, JText::_('DATE_FORMAT_LC3')); ?></span>

После чего код стал выглядеть так:

<div>
<strong><?php echo JText::_( 'More Articles...' ); ?></strong>
</div>
<ul>
<?php
foreach ($this->links as $link) : ?>
<li>
<span><?php echo JHTML::_('date', $link->created, JText::_('DATE_FORMAT_LC3')); ?></span><a class="blogsection" href="/<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($link->slug, $link->catslug, $link->sectionid)); ?>">
<?php echo $this->escape($link->title); ?></a>
</li>
<?php endforeach; ?>
</ul>

JHTML выводит дату создания материала в формате DATE_FORMAT_LC3, который вы можете заменить на тот, который вас утроит, или задать собственный в файле language/ru-RU/ru-RU.ini, там же вы увидете уже возможные варианты отображения даты. У меня же отображается в формате День Месяц Год:

DATE_FORMAT_LC3=%d %B %Y

Чтобы дата отображалась в определенном стиле она заключена у меня в тег span , который предварительно нужно задать в css стиле вашего шаблона. У меня за эту часть как в принципе во многих стандартных шаблонах отвечает стиль blog_more:

.blog_more span { font:normal 11px/20px Arial, Helvetica, sans-serif; background:#aa7159 url(ваше изображение) no-repeat 100% 0; margin-right: 10px; color:#fff; padding:3px 7px 2px 4px; }

Аналогичным образом нужно подправить файлы blog_links.php в папках  /components/com_content/views/section/tmpl/ и /components/com_content/views/category/tmpl/, чтобы в таком виде отображался данный модуль и при просмотре Разделов и Категорий в формате Блога. 

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

Вы можете оставить комментарий авторизовавшись через любую из представленных социальных сетей ниже:

                 


Защитный код
Обновить