В этой статье речь пойдет о том, на что и как юзер может «оформить подписку», и что из всего этого может получиться. Хорошо ли, плохо ли, но в текущей версии Alto CMS для каждого пользователя в соответствии с его подписками формируется два потока:
1) Лента — это новый контент публикуемый на сайте, обычно находится по адресу https://altocms.ru/feed/
2) Активность — это события, происходящие на сайте, увидеть можно здесь: https://altocms.ru/stream/
Лента
Как уже писал, это новый контент — новые топики (статьи) и комментарии. Вы можете подписаться как на конкретных пользователей, так и на конкретные блоги. Настройка всей подписки так же на странице https://altocms.ru/feed/ в сайдбаре.Т.е. если вы подписываетесь на блог, то в вашу ленту будут попадать все топики из этого блога.
Отдельным потоком Ленты идут новые комментарии к статьям, которые вы хотите отслеживать. При публикации статьи автор автоматически подписывается на комментарии к этой статье. Плюс он может подписаться на комментарии к любой другой статье.
Активность
В активности фиксируются события пользователей. В настройках на https://altocms.ru/stream/ вы можете указать, какую именно активность и каких пользователей вы желаете отслеживать.Важные нюансы: если вы, находясь в профиле пользователя, подписываетесь на него, то вы подписываетесь на его активность, но не на контент, автором которого он является. Чтобы подписаться на контент пользователя, вам надо перейти на Ленту и там подписаться на него.
То же самое касается и дружбы — при добавлении пользователя в друзья, вы подписываетесь на его события, но не на контент.
А вот записи на стене в нынешней версии никуда не добавляются — ни в активность, ни в ленту контента.
Резюме
Во-первых, понимая нюансы (и варианты) подписки, вы можете лучше объяснить это пользователям своих сайтов, чтобы они могли получить максимум пользы для себя.Во-вторых, очевидно, что система подписка на контент и события на сегодняшний день далеко не идеальна. И, возможно, у кого-нибудь появятся идеи, как это можно улучшить.
21 комментарий
1. для незарегистрированных выводить в /feed не ошибку, а «нет доступа» или типа: «Для настройки и просмотра персональной ленты необходимо авторизоваться».
2. т.к. Лента — ключевая вещь в персонификации контента пользователю и существуют всего 2 объекта подписки: блог и юзер, предлагаю для них сделать по клику poshytip окошко со ссылками: для блога — «подписаться», «просмотр блога»; для юзера — «подписаться», «написать письмо», «профиль». Это позволит быстро подписываться на все объекты.
3. В экшене «Активность» (кстати, здесь почему то нет ссылки на неё) убрать эвент «я слежу» и перенести его в Ленту. Т.е. в ленте будет три вкладки: Топики, Отслеживаемые комментарии и Отслеживаемая активность.
4. Ну и сразу по трекеру предложение: здесь лучше размещать не стандартный topic list, а только название топика, автора, кол-во камментов всего и новых. Имхо, на хабре это сделано идеально:
И ещё: с подписками на блоги есть путаница:
— «вступить» (чтобы писать и иметь возможность подписаться в ленте)
— «подписаться» (чтобы видеть топики в ленте)
Думаю «вступить» лишнее — решается плагином blogautoconnect
Поэтому сейчас «вступление в блог» — это на самом деле «подписка на блог» (текстовки остались старые, нужно будет их изменить).
Другое дело, что новый механизм создания своих типов блогов позволяет задать такое ограничение — писать в блог могут только его подписчики.
Ну а в остальном — разумные предложения
Таким образом фактически получив лаконичную ленту активности наподобие форумного типа (как forum/search.php?search_id=active_topics на phpbb или find-new/posts на xenforo) с последними постами и комментами т.е. без лишней для большинства пользователей информации. Такая лента позволит следить за всем добавляемым контентом на сайте, и в то же время не задаваться вопросами — а что это там за галочки, а что дает добавление в друзья или подписка на человека, а почему оно так работает а не иначе, etc.
При этом конечно же оставив feed, в котором будут отображаться обновления в подписанных блогах и топиках. Но отключив виджет с выбором блогов. Т.к. он опять же создает путаницу, ведь, убрав в нем галочку с одного из блогов, юзер будет думать, что отписался от блога. Но при этом в списке блогов он увидит, что на этот самый блог подписка все равно осталась. Для него это будет непонятка. Если скрыть со страницы feed виджет с галками («Выберите блоги которые вы хотели бы читать»), логика будет такая: юзер подписался на блог в списке блогов, значит он видит обновления этого блога в фиде, т.к. галка ставится автоматом. Юзер отписался от блога в списке блогов и перестал видеть его обновления в фиде. Без всяких для него непоняток.
Итого получим страницы:
— последние посты
— последние комменты
— последние посты из отслеживаемых блогов
— последние комменты из отслеживаемых топиков
Без возможности настройки пользователями, без функции френдов и фолловинга, но и без путаницы.
Иными словами, вместо простого и логичного действия в месте возникновения вопроса (отметить галочкой блоги непосредственно в ленте) вы усложняете и удлиняете путь этого действия, отсылая пользователя неизвестно куда. Отписка от блога в ленте блогов — действие не очевидное,и на хоп дальше — это надо же из ленты перейти в список блогов, там найти нужный блог, там отметить...потом вернуться в ленту...
и проще, чем объяснять юзерам, почему это работает так и не иначе, можно ли сделать по-другому и почему нельзя. Проще убрать с глаз долой.
1. Добавление в друзья —> слежка за активностью.
2. Подписаться в профиле —> слежка за активностью.
3. Добавить в Ленте —> слежка за контентом.
Значит, первый и второй пункт выполняют одни и те же функции, разве нет. Следовательно, чтобы не путать людей, дублирующий пункт 1 надо удалить (в моем случае скрыть + скрыть любые упоминания), а пункт 3 — вынести в профиль юзера рядом с кнопкой пункта 2.
1. Убрать дублирующую кнопку «Подписаться»
2. Переименовать «Добавить в друзья» в «Подписаться»
3. Переименовать «Друзья» в «Подписчики»
4. Убрать возможность выбирать людей для слежки за контентом в Ленте, т.к. в активности все равно среди прочего отображаются обновления этого самого контента.
5. Оставить настройки событий, как и сейчас, на усмотрение подписчикам.
Тогда выходит очень даже ничего. Но это только если «Подписаться» и «Добавить в друзья» — точно одно и то же. Если возможность добавить в друзья дает нечто большее, чем просто подписка на активность, то мои рассуждения становятся неактуальными.