» » » Сортировка новостей по последним комментариям в теге custom

Ошибка добавление новости
Вы зашли на сайт как незарегистрированный пользователь.
Для добавления новости Вам требуется зарегистрироваться либо войти на сайт под своим именем.
Ошибка добавление вопроса
Вы зашли на сайт как незарегистрированный пользователь.
Для добавления вопроса Вам требуется зарегистрироваться либо войти на сайт под своим именем.

Сортировка новостей по последним комментариям в теге custom

 Robot    2015.01.07    DLE хаки     668 
Периодически, для создания специфических блоков на сайте под управлением DLE, возникает необходимость сортировать новости по последним комментариям с помощью тега custom. Данный хак расширяет функционал тега custom и добавляет возможность сортировки новостей по последним комментариям. Новости выводятся как посты на форуме, то есть в самом начале те в которых самый свежий комментарий.

Для добавления сортировки по последним комментариям в тег custom необходимо внести доработку в функции custom_print, для этого отредактируем файл:
/engine/modules/functions.php
Найти:

if ($match[1] == "title" ) $news_msort = "ASC";


Добавить ниже:
#****** Custom sort last comments *** start ******#
		if( $match[1] == "comm_last" ) {
			$temp_array = array();
			$sql_comm = $db->query( "SELECT DISTINCT(post_id) AS post_id FROM " . PREFIX . "_comments ORDER BY id DESC LIMIT {$custom_limit}" );
			while( $row_comm = $db->get_row( $sql_comm ) ) {
				$temp_array[] = $row_comm['post_id'];
			}
			if( count($temp_array) ) {
				$where[] = "id IN ('" . implode("','", $temp_array) . "')";
				$news_msort = "";
				$news_sort = "FIND_IN_SET(id, '". implode(",", $temp_array) ."')";
			}
		}
#****** Custom sort last comments *** stop  ******#


В теге custom используем сортировку
order="comm_last"


Особенности: данный хак не поддерживает параметр navigation тега custom.
Другие новости по теме:
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.