Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Вывод списка новостей с новыми комментариями

00 голосов
4
Добрый день!

Требуется вывести на главной сайта список новостей, в которых были оставлены новые комментарии.

Комментарии для новостей сделаны с использованием форума, т.е. работает forum.topic.reviews. У инфоблока новостей для элементов заведено два свойства FORUM_MESSAGE_CNT и FORUM_TOPIC_ID.

По FORUM_TOPIC_ID можно связать элемент с темой форума в структуре данных которой есть поле LAST_POST_DATE (Дата последнего сообщения в теме).

То есть по сути надо бы как-то отсортировать элементы по полю LAST_POST_DATE по убыванию и вывести последние 5. Но какими средствами это лучше сделать пока не решил. Может кто-то уже делал что-то подобное и может дать совет?
спросил 11 Март, 13 от Hohat (720 баллов)

4 Ответы

00 голосов
Хотя, наверно, можно сделать проще - вывести список тем форума комментариев и эти темы уже отсортировать по дате последнего сообщения. Только тогда возникает вопрос как получить ссылку на новость.
ответил 11 Март, 13 от Hohat (720 баллов)
00 голосов
Вам придётся сначала найти список последних тем через CForumTopic::GetList()
Потом, зная ID темы, надо будет искать новость с нужным FORUM_TOPIC_ID
ответил 17 Март, 13 от Ly (4,580 баллов)
00 голосов
Цитата
Владимир Спасенников пишет:
Только тогда возникает вопрос как получить ссылку на новость.
Ну, как-то так:

Код
CModule::IncludeModule('iblock');
$res = CIBlockElement::GetList(
   false,
   array(
      'IBLOCK_ID' => ....,   // ID инфоблока новостей
      'PROPERTY_FORUM_TOPIC_ID' => ...,   // ID темы
   ),
   false,
   false,
     array('ID', 'NAME', 'DETAIL_PAGE_URL')
);
if ($el = $res->GetNext())
   echo '<a href="'.el['DETAIL_PAGE_URL'].'">'.$el['NAME'].'</a>'; 

ответил 22 Апр, 13 от Ly (4,580 баллов)
00 голосов
Спасибо, Дмитрий!
ответил 17 Авг, 13 от Hohat (720 баллов)

Похожие вопросы

0 голосов
8 ответов
спросил 11 Июнь, 13 от Nadejda (180 баллов)
0 голосов
3 ответов
0 голосов
3 ответов
0 голосов
0 ответов
спросил 04 Март, 16 от аноним
0 голосов
6 ответов
спросил 18 Авг, 13 от Toropunka (260 баллов)