Скрытие элементов GUI для новых пользователей (чтобы не перегружать)

Discourse is very clean, and can be made ever cleaner with themes, customization, etc, yet there is still a large number of elements, given all the functionality that there is.

Is there a way to hide GUI elements for new users, so that they can get used to the core elements, before later on (e.g. once “cheers” grows) adding the additional functionality e.g. chat, keyboard shortcuts, suggested topics, etc.

3 лайка

Hey Bastiaan :slight_smile:

It really depends on what you want to hide. There is no a general way to do such a thing.

Some features can be disabled in the admin settings.
Some can be disabled through the plugins menu settings like the gamification or chat.
Some can be hidden with CSS like the suggested topics.
Some may be disabled through custom theme components or plugins.

If you have a specific list of elements that you want to hide, you can share it. :slight_smile:

Hey @Canapin

Thank you, but I don’t mean to disable or hide these things in general, the idea is just that for new users the interface is less overwhelming, so we hide some stuff. And once they come back to the forum 5-6 times we start adding things element by element, so that they gradually learn it.

Does that make sense?

2 лайка

Ah, yes, I misunderstood. So, the elements would be hidden at first per user.
There is no such feature right now. A custom theme component or plugin could probably do that, but it would need the option (per user) to reveal all the features for users who already know Discourse.

It’s only slightly related, but Discourse’s working on a new user tips feature to guide new users through the interface:

Thanks, that is useful.

Personally, for me these wizards don’t work at all. When I’m on a new site, I want to make sense of everything, these busy attention-grabbing things are nothing but a thing to click away until I can make sense of the interface (personal issue I guess).

3 лайка

A lot of the features and functions can be adjusted by Trust Level, if that’s any use? You can compare the defaults in Trust Level Permissions Table (inc Moderator Roles)

Part of the idea of Trust Levels is to sandbox certain features behind these levels so as not to ovewhelm new users right out of the gate. There’s a blog here with some more info in too:

2 лайка

Thank you, that indeed is very close to what I was looking for.

I guess I would also to also remove permissionless features (search bar, keyboard shortcuts icon, etc).

I’m going to read the blog post now, thank you

2 лайка

A theme-component that hides all those “extras” for TL0 is an interesting experiment, and doable with simple CSS for the most part :wink:

5 лайков

As I’m new to Discourse (but spending a lot of time on it now), how could I get started with this?

I have read this

and I know about the plugin skeleton, but a TC skeleton I could not find.

I’ve looked quite a bit at the table builder component, which seems like it looks similar to a plugin. Can I use the plugin skeleton?

Install the Discourse Theme CLI console app to help you build themes will give you one.

5 лайков

If you want to hide/show stuff depending on user group, Falco shared a super helpful component as well:

4 лайка

Thank you, that’s a great solution!

1 лайк

Подхватываю эту тему, так как она возникла в другом обсуждении («Совет дня» или как напоминать/настаивать на хороших советах по использованию Discourse?)

Мне определённо хотелось бы иметь базовую тему (или «вариант» темы) с минимальным набором функций, которая активируется для пользователей по умолчанию и позволяет им добровольно переключаться на «продвинутый/полный интерфейс» со всеми доступными возможностями Discourse. Возможно, есть потребность в более тонком добавлении функций в интерфейс, но пока я не уверен.

Это было бы похоже на вход в админ-панель роутера: есть «базовый» режим, продвинутый, а иногда и экспертный.

Моя цель — миграция пользователей с Facebook. Так какие минимальные функции/возможности им следует получить?

  • создание темы с скрытым полем заголовка, которое можно раскрыть при желании
  • ответ на тему
  • лайк темы или сообщения
  • получение ссылки на тему или ответ
  • добавление изображения
  • редактирование профиля и некоторых базовых настроек (остальное скрыто, пока не будет выполнено определённое действие для его отображения)
  • упрощённые уведомления (все в одном разделе)
  • скрытие большей части метаинформации о темах, отображаемой в списке (например, «xyz ответил n минут назад» и т. д.)
  • поиск с ограниченными опциями (простой поиск, продвинутый доступен, как в Google)

Очевидно, есть и другие возможности, это лишь первоначальные идеи. Я думаю, что попробую убрать практически всё возможное, оставив минимум, чтобы пользователи могли делать то, с чем, вероятно, знаком «средний пользователь социальных сетей». Примерно: публикация, лайк, комментарий, добавление ссылки или фото, заполнение профиля, проверка уведомлений.

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

1 лайк

Заголовки тем настолько фундаментальны, что я не уверен, что скрывать их везде — хорошая идея. :thinking:

С точки зрения простоты, это хороший пример того, что вы представляете?

2 лайка

Это действительно мило, да! Это делает всё очень простым.

Насчёт заголовков — я понимаю, что вы имеете в виду. Знаете, Facebook начал внедрять их в группах. Хотите посмотреть, как это выглядит в моём сообществе? :sweat_smile:

Конечно, мы можем обучать людей, и мы это сделаем. Но вот что, скорее всего, произойдёт, если я отпущу своих «основных» участников сообщества на волю в Discourse.

Вот пример интерфейса, где заголовок не кричит вам в лицо:

Заголовок явно представлен как необязательный. Фокус смещается на тело сообщения, а не на заголовок. Даже как опытный блогер, серьёзно, я не знаю ничего более парализующего, чем иметь идею для поста и сталкиваться с мигающим курсором в поле «Заголовок». К счастью, я уже взрослый и теперь перемещаю курсор в тело сообщения, начинаю писать, а возвращаюсь к заголовку позже. Но требуется осознанность и сила воли, чтобы нарушить неявный порядок формы на экране :wink:

Так что здесь меня приглашают начать писать. Я могу, если захочу, установить заголовок.

Как мы можем реализовать это в Discourse? Ну, если заголовок не установлен, использовать первые несколько слов темы. Более опытные участники при необходимости исправят заголовок позже. Но тем временем это не создаст препятствия на пути публикации для нового пользователя, пишущего первый или второй раз, и ценность автоматического заголовка, вероятно, не будет ниже, чем «ку-ку всем», что мы, скорее всего, будем видеть довольно часто.

Я знаю, что тема заголовков — это для меня камень преткновения, и не все так считают, поэтому, возможно, это случай для отдельного плагина/компонента (какого именно?).

1 лайк

Скорее всего, вы сможете скрыть большую часть этого с помощью CSS. Тема Horizon Theme уже предоставляет минималистичный интерфейс, разработанный для простых и удобных для пользователя решений, так что, возможно, вы сможете использовать её в качестве отправной точки?

2 лайка