·
Added a discussion

Доброго времени суток!

У меня есть задача как-то разделить возможности модуля timeline.

Я начал в это вникать и спустя несколько дней пришел к пониманию (возможно ошибочному), что с ним есть один парадокс: он слишком прост в своей конфигурации и это приводит к анархии на сайте. Как бы это странно не звучало. Настраивая его для одной задачи на одной странице, он перестает выполнять любые другие задачи на всем остальном сайте.

Допустим, я хочу на главной странице отображать только комментарии из всех публикаций и сообществ, без фида новых публикаций и записей о том, что кто-то сменил аватар профиля. Я могу это сделать. Я в настройках студии, в модуле timeline отключаю все ивенты, кроме комментариев и это работает. После этих действий в модуле сообществ, пропадает фид сообщества, т.к. там используется модуль timeline, а я для достижения одной цели выключил трекинг событий сообщества для всего сайта.

Другой вариант, поскольку только модуль timeline имеет сабменю "популярное", "новое", "каналы", я хочу разместить этот модуль на главной странице, но мне не нужно чтобы на главной странице отображались все комментарии и смены аватаров пользователей. Только публикации. Выключаем лишнее в настройках в модуле timeline и да, логично остаются только публикации, но больше ни на одной странице сайта вы не найдете ни одного комментария, потому что больше они не отслеживаются модулем timeline.

Какая у меня сейчас есть идея в голове и как я пытаюсь разложить функции timeline в разные модули:

Я включаю все, что мне нужно в студии, в настройках модуля timeline для отслеживания: и публикации и комментарии и новые посты в контекст сообществ, всю нужную мне активность на сайте. Затем, я могу добавить блок wiki на страницу и в этот блок добавить макрос какого-либо формата. Например, добавление в wiki блок записи вида

{{**~bx_timeline:get_block_view_hot~**}} 

заставит wiki блок отобразить содержимое вкладки "популярное" из модуля timeline.

Так можно получить много чего: популярные публикации, новые публикации, можно обращаться и к bx_posts, bx_wiki и многое-многое другое.

Я нашел и изучил ресурс

https:**//ci**.**una**.**io/docs/

вдоль и поперек, но я так и не смог найти ни одного метода, класса или еще чего либо, что работало бы с комментариями в модуле timeline.

Как будто, вот это может решить мою проблему

bx_srv('bx_timeline', 'get_block_view_custom', [...]); 

но, мне неизвестны параметры, которые можно использовать тут в качестве фильтра. Хотя там указано, что он может принимать параметры на вход.

Собственно вопрос:

Подскажите пожалуйста, можно ли как-то решить мои проблемы с timeline путем включения отслеживания всего в настройках timeline и дальнейшего использования на разных страницах "макросов" из разряда

{{**~bx_timeline:get_block_view_comments_feed~**}} 
{{**~bx_timeline:get_block_view[{"author":"user_id", "mode":comments}]~**}} 

Выше блок я написал выдуманные функции, но "близко к тексту", как это могло бы быть.

Какое может быть решение, в котором у меня на одной странице будет отображена хроника timeline с сабменю из "популярного" и "свежего" и будут отображены только публикации пользователей и тут же, в другом блоке будут отображаться все комментарии из всех источников на сайте: личные страницы пользователей, сообщества, комментарии к публикациям и т.д.?

Возможно я сам себя загнал куда-то не в ту сторону и сейчас копаю там, где уже есть готовое решение и я просто пытаюсь это реализовать совсем неправильно.

Спасибо большое <3

  • 642