О ссылке "Все" (топики) на главной странице

Как-то не обращал внимания на следующую ситуацию:
Ссылка, «Все» (насколько понимаю, имеется в виду «Все топики») подразумевает выдачу всех топиков из всех блогов (коллективных и персональных), но фактически ведет на главную страницу. На главной же странице отображаются только те топики, которые «выведены» на главную страницу администратором. Это вводит посетителей в заблуждение.

1. Каким образом можно отобразить действительно все топики из всех блогов?

Для себя я нашел решение в виде плагина stream. Изначально он предназначен для выдачи всех топиков в порядке, соответствующем дате последнего действия с топиком (изменение, комментарий). Изменив условие я сделал выдачу топиков по дате создания.

Правда, хотелось бы использовать данный плагин и по прямому его назначению.

2. Может у кого-то есть другие идеи?

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

avatar
1. В конфиге прописать нужный рейтинг, после которого топик попадает на главную.
Например -9999 =) — и все топики по умолчанию будут на главной!
avatar
Это не решение, а костыль. На главной все топики не нужны.
avatar
Есть идеи по более корректному решению?
avatar
Спасибо за совет, но prepodina прав — не все топики должны быть на главной странице. Возьму на заметку — как альтернативный вариант.

Пока подумаю как «прикрутить» два плагина [b]stream[/b], первый — для вывода всех топиков, отсортированных по дате создания, второй — со стандартным функционалом (поток).
avatar
Я можно поподробнее. Как раз нужно именно это. Скажите где этот файл, и какая строчка. Заранее спасибо.
avatar
Вопрос снимается. Нашел ответ :)

нужно в \config\ 153строка, выставить нужное значение. У меня стоит, что на «главную страницу» будут попадать топики с рейтингом до -999

$config['module']['blog']['index_good']      = -999;
avatar
тоесть нужно в \config\config.php менять :)
avatar
Я решил немного по-другому, пример смотрите здесь: tehnologii.org.ua
avatar
В вышеуказанном примере () используются два плагина — stream и измененный stream (streamall).
avatar
Вот корректная ссылка: tehnologii.org.ua
avatar
Отвечу сам себе, а, возможно, и кому-то будет интересно.

Чуток подправил ранее упомянутый плагин stream и сделал на его основе плагин streamall (All Topics Plugin). Данный плагин может работать совместно с плагином streamall, а различие лишь в том, что он добавляет в главное «подменю» меню «Все топики» (site.com/topics/). При переходе в данный раздел отображаются все топики (всех блогов), упорядоченные по дате создания.

Можно, конечно, это меню убрать и назначить эту ссылку подменю «Все» и тогда все будет «на своих местах».

Кому интересно, пробуйте: ukrntb.com/misc/LS/streamall.rar

PS Надеюсь, автор stream не будет в обиде…
PPS Ошибок в работе вроде бы не заметил, но мало ли что, — проверьте, покритикуйте.
avatar
При переходе на страниц всех топиков вываливается такая ошибка:

Fatal error: Uncaught exception 'Exception' with message 'Can not find the block`s template: OnlineUsers' in /home/h13u8/public_html/site.ru/engine/modules/viewer/Viewer.class.php:506 Stack trace: #0 /home/h13u8/public_html/site.ru/engine/modules/viewer/Viewer.class.php(428): ModuleViewer->DefineTypeBlock('OnlineUsers', NULL) #1 /home/h13u8/public_html/site.ru/engine/modules/viewer/Viewer.class.php(616): ModuleViewer->AddBlock('right', 'OnlineUsers', Array, 10) #2 /home/h13u8/public_html/site.ru/engine/modules/viewer/Viewer.class.php(204): ModuleViewer->BuildBlocks() #3 /home/h13u8/public_html/site.ru/engine/classes/Engine.class.php(164): ModuleViewer->Init() #4 /home/h13u8/public_html/site.ru/engine/classes/Engine.class.php(394): Engine->LoadModule('ModuleViewer', true) #5 /home/h13u8/public_html/site.ru/engine/classes/Engine.class.php(326): Engine->GetModule('Viewer_Assign') #6 /home/h13u8/public_html/site.ru/engine/classes/Module.class.php(49): Engine->_CallModule('Viewer_Assign', Array) #7 /hom in /home/h13u8/public_html/site.ru/engine/modules/viewer/Viewer.class.php on line 506

Не знаете, как лечить?
avatar
А у меня не работает. Вообще не открывает эту страницу (/topics)
Что я не так делаю?
avatar
В конфиге надо убрать лишние блоки.
avatar
randomtoy написал:
я задумывался об этом, еще во времена 0.3.1. Но кажется тогда я остановился на том, что BuildFilter находится в самом маппере, и изменять его не представлялось возможным. сейчас я все больше задумываюсь о переписывании плагина с нуля и модификации BuildFilter посредство Inherit. Но когда дойдут руки — не имею представления :(


Я всего лишь изменил в stream\classes\modules\stream\Stream.class.php:
public function GetTopicsByUpdate($iPage,$iPerPage,$bAddAccessible=true) {
		$aFilter=array(
			'blog_type' => array(
				'personal',
				'open'
			),
			'topic_publish' => 1,
/*                        'order' => 't.topic_last_update desc' */ /* By Vinser */
                        'order' => 't.topic_date_add desc' /* Add By Vinser */

		);

Т. е. — изменил условие сортировки с даты последнего изменения на дату создания топика. После этого изменения топики сортируются по дате создания. Таким образом получаем обычный список всех топиков, отсортированных по дате создания.

Или что подразумевалось под «проблемой», упомянутой в комментарии?
avatar
Решил всё таки переделать поток. начну с первого сентября. там постараюсь более полно ответить по данному вопросу
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.