Ссылка Новые, Выбор вида Топа

1. Её стоит выводить, только если есть контент а если нет то и не выводить вовсе. В шаблоне нужно добавить проверку {if ($iCountTopicsNew)>0} новые {/if})

2. То же самое касается и мест, таких как, например вывод топа топиков(комментов) за 7 дней 30 дней… если их нет то и выбирать не нужно давать

UPD
Решение 2-го открываем
\classes\actions\ActionTop.class.php
добавляем в EventTopic() строки


/**
* Получаем число топиков за каждый из периодов
*/			

$sDate24h=date("Y-m-d H:00:00",time()-$this->GetTimeByPeriod('24h'));
		$aTopics24h=$this->Topic_GetTopicsRatingByDate($sDate24h,1);

$sDate7d=date("Y-m-d H:00:00",time()-$this->GetTimeByPeriod('7d'));
		$aTopics7d=$this->Topic_GetTopicsRatingByDate($sDate7d,1);
		
$sDate30d=date("Y-m-d H:00:00",time()-$this->GetTimeByPeriod('30d'));
		$aTopics30d=$this->Topic_GetTopicsRatingByDate($sDate30d,1);

$aCountTopics[0] = count($aTopics24h);
$aCountTopics[1] = count($aTopics7d);
$aCountTopics[2] = count($aTopics30d);

/**
* Загружаем в шаблон
*/			
$this->Viewer_Assign('aCountTopics',$aCountTopics);

Добавляем в шаблон проверку(на примере 24 часов )

{if $aCountTopics[0]!=0}
<a href="">{$aLang.blog_menu_top_period_24h}</a>
{/if}

так добавим ф-ю в \classes\actions\ActionTop.class.php

         /**
	 * Получает нужный формат времени по периоду
	 *
	 * @return unknown
	 */
	protected function GetTimeByPeriod($period) {
		switch ($period) {
			case '30d':
				/**
				 * за последние 30 дней
				 */
				$timeByPeriod=60*60*24*30;
				break;
			case '7d':
				/**
				 * за последние 7 дней
				 */
				$timeByPeriod=60*60*24*7;
				break;
			case '24h':
				/**
				 * за последние 24 часа
				 */
				$timeByPeriod=60*60*24*1;
				break;
		}
		return $timeByPeriod;
              }

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.