Web Development
JБлог

Формат даты в Joomla и метка новинка в компоненте

Оцените материал
(1 Голосовать)

При создание новой записи в вашем компоненте, иногда требуется отметить что материал является новым. Любой пользователь сразу обратит на такую отметку внимания и возможно захочет посмотреть, что же там новенького.

И так как же сделать такую отметку. Для начала в языковом файле вашего компонента language/ru-Ru/com_mycom.ini требуется добавить

; Date_format
DATE_FORMAT_LC6="G:i"
DATE_FORMAT_LC7="d.m.y"
DATE_FORMAT_LC8="ymd"

Теперь в вашем шаблоне в цикле foreach, перед выводом списка ваших запесей добавляем

$release = JHTML::_('date', $item->created, JText::_('DATE_FORMAT_LC8')); 
 $date = date('ymd');
 $date = $date - $release;

И в самом списке, если хотите пометить изображения материала

<img class="img" src="/<?php echo $item->img; ?>" /> // изображения материала
 <?php 
    if ($date < 4) { // количество дней для новых записей
        echo '<img class="new" src="/images/new.png" />';
    }
 ?>

Eсли в заголовке

<h3 class="title"><?php echo $item->title; ?>" </h3> // заголовок материала
 <?php 
    if ($date < 4) { // количество дней для новых записей
        echo '<span class="new">НОВИНКА!!!</span>';
    }
 ?>

Остается только оформит css

 

Сегодня, вчера в дате

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

 $release = JHTML::_('date', $item->created, JText::_('DATE_FORMAT_LC8')); 
 $date = date('ymd');
 $date = $date - $release;
 if ($date == 1) {$release = JHTML::_('date', $item->created, JText::_('DATE_FORMAT_LC3')).' вчера ';}
 if ($date == 0) {$release = JHTML::_('date', $item->created, JText::_('DATE_FORMAT_LC3')).' сегодня ';}
 if ($date > 2) {$release = JHTML::_('date', $item->created, JText::_('DATE_FORMAT_LC3'));}

 echo $release;

 

Стандартные форматы даты выглядят следующим образом

  • DATE_FORMAT_LC=%d.%m.%Y – 23.02.2011
  • DATE_FORMAT_LC1=%d.%m.%Y– 23.02.2011
  • DATE_FORMAT_LC2=%d.%m.%Y %H:%M – 23.02.2011 13:20
  • DATE_FORMAT_LC3=%d %B %Y – 23 Февраля 2011
  • DATE_FORMAT_LC4=%d.%m.%y – 23.02.11

Расшифровка переменных даты

  • Y – год выводится полностью 2011;
  • y– последние две цифры года;
  • B – полное название месяца;
  • m– выводится месяц двумя цифрами;
  • d –  выводится день месяца двумя цифрами;
  • H – вывод часа в 24-часовом формате;
  • M – вывод минут
Авторизуйтесь, чтобы получить возможность оставлять комментарии