0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 1939 Просмотров
*

Дмитрий Плотников

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
id="current" в модуле latestnews
« : 21.03.2011, 14:20:29 »
Нужна помощь, хочу отображать последние новости на главной странице. Выглядеть будет как обычное меню, новые новости сверху, это все я могу и мне понятно.

Но нужно, чтобы было как в обычном меню - при переходе, пункту меню присваивался id="current"

Но последние новости выводятся динамически стандартным модулем Joomla mod_latestnews

Вопрос, где и какой код прописать, чтобы при переходе, пункту меню присваивался id="current"?
*

aantipov

  • Новичок
  • 9
  • 0 / 0
  • alexei.me
Re: id="current" в модуле latestnews
« Ответ #1 : 21.03.2011, 16:26:07 »
Немного поменять логику модуля - сделать условие: если id новости совпадает с id текущей статьи, то добавить идентификатор "current"
*

Дмитрий Плотников

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: id="current" в модуле latestnews
« Ответ #2 : 21.03.2011, 16:47:46 »
Немного поменять логику модуля - сделать условие: если id новости совпадает с id текущей статьи, то добавить идентификатор "current"

Идея хорошая, сам я только не смогу такое написать.
Кто нибудь может помочь написать это условие?
« Последнее редактирование: 21.03.2011, 17:20:34 от Дмитрий Плотников »
*

Дмитрий Плотников

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: id="current" в модуле latestnews
« Ответ #3 : 21.03.2011, 18:17:47 »
Неужели никто не может помочь с 1 условием?(((
*

Дмитрий Плотников

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: id="current" в модуле latestnews
« Ответ #4 : 22.03.2011, 09:35:07 »
Мне на другом форуме подсказали, что нужно:

<?php $article_id = JRequest::getVar('id');
if ($article_id ==$item->id ){
 $active = " id='active' ";
}

 ?>

Но за динамический вывод отвечает:

Код
$i		= 0;
$lists = array();
foreach ( $rows as $row )
{
if($row->access <= $aid)
{
$lists[$i]->link = JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid));
} else {
$lists[$i]->link = JRoute::_('index.php?option=com_user&view=login');
}
$lists[$i]->text = htmlspecialchars( $row->title );
$i++;
}

как только не вставлял не работает
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: id="current" в модуле latestnews
« Ответ #5 : 22.03.2011, 09:55:05 »
так не сюда надо вставлять. тут только ссылки формируются и текст для них.
сам вывод осуществляется в mod_latestnews\tmpl\default.php
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: id="current" в модуле latestnews
« Ответ #6 : 22.03.2011, 10:39:31 »
в общем,  в helper.php
после
      foreach ( $rows as $row )
      {
добавляем      
      $lists[$i]->id = (int)$row->id;

а \tmpl\default.php
приводим к такому виду:
Код

<?php // no direct access
defined('_JEXEC') or die('Restricted access'); ?>
<ul class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">

<?php


$article_id = (int)JRequest::getVar('id');

foreach ($list as $item) :  
$active="none";
if ($article_id == $item->id ) $active = "active";

?>
<li class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
<a href="<?php echo $item->link; ?>" class="latestnews<?php echo $params->get('moduleclass_sfx')." ".$active; ?>">
<?php echo $item->text; ?></a>
</li>
<?php endforeach; ?>
</ul>

*

Дмитрий Плотников

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: id="current" в модуле latestnews
« Ответ #7 : 22.03.2011, 12:29:17 »
в общем,  в helper.php
после
      foreach ( $rows as $row )
      {
добавляем      
      $lists[$i]->id = (int)$row->id;

а \tmpl\default.php
приводим к такому виду:
Код

<?php // no direct access
defined('_JEXEC') or die('Restricted access'); ?>
<ul class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">

<?php


$article_id = (int)JRequest::getVar('id');

foreach ($list as $item) : 
$active="none";
if ($article_id == $item->id ) $active = "active";

?>
<li class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
<a href="<?php echo $item->link; ?>" class="latestnews<?php echo $params->get('moduleclass_sfx')." ".$active; ?>">
<?php echo $item->text; ?></a>
</li>
<?php endforeach; ?>
</ul>



Большое вам спасибо, все работает как вы написали!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как увиличить максимальное количество символов в стандартном модуле (mod_custom)?

Автор genkey

Ответов: 0
Просмотров: 1486
Последний ответ 27.04.2017, 14:41:22
от genkey
Как применить атрибут size для элемента select в модуле simpleform 2?

Автор Loh

Ответов: 5
Просмотров: 2065
Последний ответ 06.06.2015, 13:44:28
от motokraft
Вывести view в модуле

Автор xim002

Ответов: 0
Просмотров: 1394
Последний ответ 31.03.2015, 14:27:40
от xim002
Баннеры не отображаются в модуле mod_banners на хосте.

Автор Roman Petrenko

Ответов: 19
Просмотров: 12445
Последний ответ 31.01.2015, 16:15:02
от drema71
Как разместить статью в модуле?

Автор adcroco

Ответов: 5
Просмотров: 2130
Последний ответ 28.01.2014, 17:33:41
от adcroco