PDF Печать E-mail
(5 Голосов)
08.06.2010 21:33

Модуль «Последние новости» с кратким содержанием Joomla 1.5*

Собственно, стояла задача выводить последние новости/статьи в более развернутом виде для JOOMLA 1.5. например с кратким содержанием и датой.

Результат работы вы можите видеть на этом сайте.

 

Итак, будем переделывать родной модуль mod_latestnews. Нам необходимы будут 2 файла: modules\mod_latestnews\helper.php и modules\mod_latestnews\tmpl\default.php.

modules\mod_latestnews\helper.php. Добавим  новую функцию. Она будет отрезать нужный нам кусок текста, для использования его в кратком описании.

Перед строкой class modLatestNewsHelper

добавляем:

function getMyNews ($text, $str_len ) //в нее передаем текст и длину, после которой текст не будет использован. Далее следует простой цикл.
{
 $txt = split(" ", $text );
 
 for($i = 0; $i < $str_len; $i++)
 {
 $textCrop .= $txt[$i]." ";
 }
 $textCrop = strip_tags ( $textCrop ) . "...";
 return $textCrop;
}
 

 

Далее между строками:

$lists[$i]->text = htmlspecialchars( $row->title );
i++;

Добавляем код

$lists[$i]->created = JHTML::_('date', $row->created, JText::_('DATE_FORMAT_LC2')); //вывод даты.
$str_len = '20'; //краткое описание.колличество слов
$lists[$i]->introtext = getMyNews ($row->introtext , $str_len); 
 
 

Далее переходим к шаблону нашего модуля: modules\mod_latestnews\tmpl\default.php. в моем случае он такой:

 

<?php defined('_JEXEC') or die('Restricted access'); ?><ul class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">><?php foreach ($list as $item) :  ?> <p class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>"> <?php echo $item->created; ?><br /> // ввыводим дату создания<b> <?php echo $item->text; ?></b><br /> // название материала <?php echo $item->introtext; ?><br />// краткое описание<span class="nws"><a href="<?php echo $item->link; ?>">Подробнее...</a></span></p><?php endforeach; ?></ul>

Данный шаблон можно модифицировать под свой дизайн

ДОБАВИТЬ В ЗАКЛАДКИ:

 

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


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