Вывод случайного опроса

Рубрика: Joomla 1.5
Posted on: 16.09.2010 в 14:57 - 3 комментария - Visited 1607 times

Все сталкивались с проблемой, когда в этой cms после версии 1.0 нужно было повесить опрос. Насколько это было удобно в версии 1.0 на столько это тупо в 1.5. Модуль отображает только конкретно заданый опрос на конкретно назначенных страницах, что ужасно раздражает. А  если опросов несколько, то те, которые не выставлены для отображения можно только увидеть в самом компоненте, и голоса для этого опроса растут со скоростью "кому не в лом копаться".

Эту ситуацию нужно было поменять и кардинально.

Задача: Если не указан опрос в модуле, то выводить случайно все доступные опубликованные опросы .

Решение:

Открываем файл \modules\mod_poll\mod_poll.php

Ищем код:

$poll = modPollHelper::getPoll($params->get( 'id', 0 ));

Меняем его на:

 
if (!($ident = $params->get ('id', 0))) { //Если нет назначенного опраса в этом месте
	$database = & JFactory::getDBO (); //подключаем базу данных
	$query = 'SELECT id FROM #__polls WHERE published=1'; //ищем все опубликованные опросы
	$database->setQuery ($query);
	$results = $database->loadObjectList ();
	$howmuch = count ($results) - 1; //определяем количество элементов
	$item = rand (0, $howmuch); //выбираем случайный элемент
	$ident = $results[$item]->id; //присваиваем выбранный id опроса
}
 
$poll = modPollHelper::getPoll ($ident); //получаем данные опроса по его id

Проще даже сложно придумать. Сохраняем файл и наслаждаемся случайными опросами на каждой назначенной странице

😃+

3 комментария on “Вывод случайного опроса”

1
Heapsip

прикольный сайтик! много чего прикольного! админы умницы!!

08.11.2010 в 16:02
2
Heapsip

Хай!! Очень крутая статья!! С радостю буду читать и другие статьи..

08.11.2010 в 19:50
3
FereBedo

Нужно по больше таких статей делать как эта.

20.11.2010 в 08:33

Leave a comment

Включите изображения, чтобы увидеть вопрос *