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

Category: Joomla 1.5
Posted on: 16.09.2010 в 14:57 - 3 комментария - Visited 2825 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 on 16:02
2
Heapsip

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

08.11.2010 on 19:50
3
FereBedo

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

20.11.2010 on 08:33

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

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