Что за медальки можно прочитать здесь:
https://cnc-club.ru/forum/viewtopic.php?f=18&t=1062
В общем суть в том, что медальки присуждаются за ценные темы, ховто или посты и главное каждая медалька при клике по ней ведёт к теме или посту за который она была присуждена.
Судя по всему сейчас медалек на форуме нет, так как их оригинален и похоже его не стали портировать после перехода на новый релиз phpbb.\
@cocucka @crypt как вам такая идея?

Подписки не ведут к послужившим поводом для них постам.
Вот сделать публичный букмар отдельных постов, возможно с назначением им тегов будет интересным.
@crypt @cocucka
Кто их будет букмарить и тегировать?
Пользователи которым сайта которым нужно запомнить местонахождение конкретного поста потому что в поисковике сайта можно будет указать чтобы искали только по лично назначенным тегам и в своих букмарах.
Если информацию о назначенных пользователем тегах хранить в двух местах, общем индексе форума(без запоминания кто назначил тег) и в личном профиле пользователя как список постов и назначенных им пользователем тегов то всё это не будет так сильно грузить сервер форума.
То есть на форуме будет куча личных БД с тегами пользователей и создаваемый из них общая ДБ всех тегов форума.
Распиши (а лучше спроектируй) подробно как ты видишь реляционку этой байды. Какие там будут нормальные формы-шмормы, индексы-пиндексы, запросы-напросы.
Это черновик_
С моего ничтожного опыта базы мне представляются таблицами на манер ассоциативного массива bash.
Пользовательская таблица состоит из столбца тегов, столбца с списком постов каждый элемент которого состоит из id поста, момента времени когда пользователь этот тег добавил и флагов статуса поста(кем сделан, ОП или простой/одиночныйй или начало треда, количество ответов), а так же столбец с комментариями пользователя о причинах назначения того или иного тега.
Общефорумная БД является состоит из отдельных субБД в котором каждая субБД посвящена одному тегу и состоит из столбца с id постов и столбца флагов поста в формате аналогичном формату флагов пользовательской таблицы.
Так же для облегчения борьбы с вандалами надо вести двух дневный или недельный лог назначения тегов с записью какой пользователь какие теги назначил.
(например один шутник присвоил всем постам гомогрима тег С, а другой шутник тег Раст, понятно что такое назначение тегов следует откатить, при этом надо не затронуть посты гомогрима в которых он действительно что-то говорит о этих языках, при этом операции производятся только с общефорумной БД тегов, личные БД пользователи админят самостоятельно)
Как всё это будет работать?
Рассмотрим сразу случай когда у поста уже есть один и более тегов.
Эти теги берутся из общефорумной БД по этому у пользователя есть две возможности.
Добавить или удалить один или несколько тегов этого поста в личной БД(возле каждого тега есть плюс или минус в скобках).
Добавить посту новый тег с занесением его в общефорумную БД с автоматическим добавлением в личную БД.
Ну и несколько видов запросов к БД.
Запрос только к личной БД,
<<<
Открой Calc – вот тебе столбцы и строки.
Допустим.
Видимо речь о no-SQL решении. Или мы будем хранить в полях таблицы кучки JSON-гавяшек?
Ну давай для начала разжуём терминологию.
БД – она, как правило, одна на всё. Ибо нет смысла ради одного или кучки тегов держать отдельное хранилище.
Внутри БД лежат таблицы.
У таблиц есть поля.
SQL-запросы являются, именно что, запросами к движку БД, которые явно говорят, что нужно выбрать. Самый простой пример:
SELECT [список полей] FROM [имя таблицы] WHERE [условия выборки]Если тебе нужно привязать более одного тега к одному посту, то классическим вариантом будет три таблицы типа (пишу в виде “таблица: поле1, поле2, полеN”) таких:
posts: id, title, body
tags: id, name
posts_tags: post_id, tag_id
Допустим, в таблицах лежат следующие данные:
posts:
1, ‘название поста’, ‘текст поста’
tags:
1, ‘тег1’ 2, ‘тег2’
posts_tags:
1, 1 1, 2
Чтобы сделать выборку всех тегов поста, используется джойн:
-- выбрать SELECT -- поля из таблицы тегов tags.id, tags.name -- но начинаем тащить из таблицы постов FROM posts -- присоединяем таблицу связей постов и тегов, где айди поста наш LEFT JOIN posts_tags ON posts_tags.post_id = posts.id -- теперь присрединяем таблицу тегов, где теги наши судя по таблице связей LEFT JOIN tags ON tags.id = posts_tags.tag_id -- где нужный айди поста в таблице постов WHERE posts.id = 1;(ну пиздец, подсветка не парсит комменты)
А вот теперь, уже лучше понимая, как это работает, повтори попытку проектирования.
-- выбратьПарсер первый коммент обработал и заткнулся.