Поделиться отдельными темами/категориями с незарегистрированными пользователями

Привет!

У нас есть закрытый экземпляр Discourse (требуется вход), но мы хотели бы сделать некоторые темы доступными для чтения по ссылке для незарегистрированных пользователей (точно так же, как это выглядит в открытых экземплярах Discourse).

Есть ли способ это реализовать?

Я ищу что-то очень похожее: возможность оставлять видимыми только некоторые закрепленные сообщения в закрытом разделе.

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

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

Не могли бы вы уточнить?

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

Полагаю, можно пойти противоположным путём: отключить требование входа, но ограничить права на чтение во всех остальных категориях так, чтобы только одна или несколько категорий, которые должны быть видны незарегистрированным пользователям, остались доступными.

Но в таком случае незарегистрированным пользователям будет доступно много другой информации, например, список зарегистрированных пользователей, нескрытые группы и, кто знает, что ещё… верно?

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

Обзор настроек безопасности категорий см. в [Видео] Как создать приватную категорию с помощью прав доступа групп.

Спасибо, Саймон. Discourse может показывать закрепленные сообщения всем пользователям только из категории «Только для зарегистрированных»?

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

В Discourse это сделать невозможно. Темы в защищенных категориях вообще не видны пользователям, у которых нет доступа к этой категории. Единственный известный мне способ обойти это — извлечь защищенный контент на другой сайт с помощью API Discourse. Контент можно отображать на внешнем сайте, но настройка такого решения не имеет смысла в большинстве случаев.

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

Это функция, которую я использовал очень давно в VBulletin. Я попробую реализовать её через Discourse API, но пока не могу установить Ruby и необходимые зависимости для её работы.

С этой функцией или без неё Discourse действительно великолепен. Спасибо за обратную связь, Саймон.

@satonotdead (ответил не тому человеку)

Я не на 100% уверен, что это сработает, но, думаю, @codinghorror мог иметь в виду что-то вроде этого.

Измените настройки прав доступа к сайту так, чтобы вход в систему не требовался.

Для категории, которую нужно сделать видимой извне, установите права доступа на «Все могут просматривать».

Для всех остальных категорий установите права доступа следующим образом:

  • Уровень доверия 0: Просмотр/Создание/Ответ. — Примечание 1
  • Повторите для уровней доверия с 1 по 4.

Примечание 1:
Первое значение прав доступа для уровня доверия 0 также можно установить просто как «Просмотр» или «Просмотр/Ответ». При этом в категории «О нас» пользователю будет указано, что ему нужно повысить уровень доверия до X, прежде чем он сможет создать тему и/или ответить.

  • Этот альтернативный вариант также может сработать: вход останется обязательным, пользователи с низким уровнем доверия смогут просматривать категорию, но не смогут создавать темы и/или публиковать сообщения, пока не повысят свой уровень доверия.

Необходим ли второй шаг? Я думал, что более высокие уровни доверия дают доступ ко всему, что доступно на более низких уровнях.

Скорее всего, нет. Но я сам не использовал уровни доверия в настройках категорий. Так что вы, вероятно, правы: для полного доступа к категории нужно установить минимальный уровень.

Но, возможно, потребуется установить два уровня. Например:

Уровень доверия 0 — Просмотр
Уровень доверия 1 — Просмотр/создание/ответ

Спасибо за ваше уточнение, Heliosurge, но я хочу скрыть остальные сообщения и оставить видимым только одно.

Цель такова: «Это форум Trust 3; если вы хотите присоединиться, вам нужно внести свой вклад и вести себя цивилизованно». Я думаю, что оставить видимым подсчёт сообщений (но не содержимое категории) может служить мотивацией.

Я попробую реализовать это с помощью API Discourse, но на данный момент мне нужно завершить и опубликовать сайт. Возможно, мы сможем поработать над этим вместе (с любым желающим). Мои навыки программирования очень ограничены, но я сделаю всё возможное и смогу помочь идеями, тестированием или чем-то другим.

Я тоже ещё многому учусь. Но могу предложить помощь и идеи.

Не уверен насчёт счётчика тем. Но вы можете создать категорию, видимую всем, а для сотрудников установить права на просмотр, создание и ответы.

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

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

У них есть маркетплейс; в зависимости от вашего бюджета кто-то может создать именно то, что вы ищете.

Спасибо за ваши ответы! Есть ли у кого-нибудь информация по этому вопросу?

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

Так что скройте Группы, Пользователей и т.д.

Этот плагин может вас заинтересовать:

Хотя автор заявил, что больше не поддерживает его.

Спасибо, но в таком случае будут отображаться все заголовки категорий 3-го уровня, а мы не хотим поощрять пользователей публиковать посты здесь и там только ради сохранения уровня 3. Мы хотим мотивировать их внутренне, а не из желания.

Я просматривал и модерировал несколько сообществ почти 15 лет назад (и работал администратором в некоторых из них; тогда было старое программное обеспечение и очень ограниченные навыки программирования, но мы обменивались идеями и проявляли много энтузиазма). Я считаю, что показ только закрепленных постов — это хорошее решение.

Не игра в прятки, понимаете?

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

Используя такие инструменты, как Hide Details, расширения для BBCode и другие дополнения, вы сможете создать очень удобный каталог.