Облако тегов Discourse

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

Ещё не знакомы с тегами Discourse? Сначала ознакомьтесь здесь: Теги Discourse

Обратите внимание: на данный момент компонент работает только на десктопных устройствах (и планшетах) из-за потенциально малых областей касания.

Настройки

Облако на главной странице по умолчанию отключено.

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

Вы можете изменить настройки цветов, чтобы перейти к монохромному режиму.

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

Посмотреть в действии

Живая демонстрация здесь: https://starzen.space/tags

Известные проблемы

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

  • Из-за потенциально малых областей касания компонент не включён на мобильных устройствах. Внимательно рассмотрите свои настройки при использовании на планшетах. Возможно, в будущем я добавлю возможность отключения на планшетах.

  • Нет автоматической поддержки тёмной темы. По умолчанию выбрана нейтральная цветовая схема, которая работает как на светлых, так и на тёмных темах. Можно сделать всё белым или почти чёрным, изменив настройки цветов. Возможно, вы сможете установить две версии и настроить их по-разному для тёмной темы. Мне ещё предстоит подумать над добавлением автоматизации в этом вопросе.

  • Если включена анимация и вы быстро переключаетесь между словами, они будут уменьшаться. Это неизбежно, так как вы не даёте достаточно времени для анимации при уходе курсора. Поэтому я добавил возможность отключения анимации в настройках.

Благодарности

Похожие проекты

Если вам это нравится, возможно, вам также понравятся мои:

Обратите внимание: вы должны включить папку uploads в настройку script src политики безопасности контента.

19 лайков

Зависит ли размер слова от того, сколько раз оно использовалось в качестве тега?

Верно. Я должен добавить это в исходный пост.

Появилось сообщение об ошибке: «Загрузка скрипта «https://{{some url}}.js» запрещена, так как это нарушает следующую директиву политики безопасности контента: «script-src»», а также «Обратите внимание, что «script-src-elem» не задано явно, поэтому в качестве резервного варианта используется «script-src»».

Похоже, вы не разрешили вашему сайту использовать скрипты из папки загрузок?

Вам нужна запись следующего вида:

image

(с вашим собственным доменом).

1 лайк

Спасибо. Я обнаружил, что он запрашивает теги из «Других тегов» только в том случае, если существуют группы тегов.

А, интересно. Спасибо за обратную связь. Тестирование проводилось только без групп тегов. Я посмотрю как-нибудь…

Я только что проверил это, я:

  • Создал новую группу тегов.
  • Добавил существующий тег в группу.
  • Обновил главную страницу.
  • Тег по-прежнему отображался в облаке.

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

Является ли эта облако тегов самым часто используемыми словами на форуме? Что-то вроде трендов в Twitter?

Нет, это буквально облако тегов Discourse. Однако я также создал: Word Cloud plugin (кстати, ссылка на него есть в первом посте), что звучит больше похоже на то, что вы описываете?

1 лайк

Есть ли что-то похожее на «Тренды» в Twitter? Например, самые популярные темы дня (темы, которые люди вводят вручную).

В Core Discourse это уже есть, это называется список «Лучшее»:

Я думаю, перевод вышел неверным. Я имел в виду самые цитируемые слова дня, например: Queijo, Carne, The Weeknd, Xtina, American Idol

[image]

1 лайк

Плагин Word Cloud, вероятно, наиболее близок, но у него пока нет временного измерения — он использует сводную статистику всего форума (или выбранных категорий).

Отлично! Я всегда хотел добавить облако тегов в Discourse, поэтому рад, что этот компонент темы доступен. Хорошая работа!

Вещь с CSP странная — я столкнулся с той же ошибкой, и она в итоге сработала для меня только после того, как я добавил путь, указанный в ошибке, который был:

https://SITEURL/uploads/default/original/1X/
1 лайк

Я проверил исходный код и обнаружил, что свойство computed tags возвращает только группы тегов из tags.json, остальные находятся в extras.tag_groups. Однако мне не удалось понять, как исправить эту проблему.

1 лайк

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

Я только что установил компонент и перешёл на страницу /tags, где в облаке отображаются только теги без назначенной группы.

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

1 лайк

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

Screen Shot 2022-02-15 at 1.03.58 PM

В процессе я также получаю эту ошибку.

Слишком много запросов с этого IP-адреса. Повторите попытку через 3 секунды.
Код ошибки: ip_10_secs_limit.
3 лайка

Спасибо, это сэкономило бы много времени.

Я добавлю это в список известных проблем, пока не найду время разобраться (сделано).