Есть у меня один заказчик, он захотел на главной странице видеть облако тегов. Чтобы было красиво и чтобы крутилось и вообще, создавало вау-эффект. Я у него спросил — он будет задавать теги для каждой страницы? Он сказал что нет, не будет, но хочет чтобы работало.
Казалось бы, это парадоксальное требование — облако тегов, но без использования тегов на сайте. Но все оказалось просто и красиво.
Я подумал, что теги в данном случае — это просто "темы". Когда пользователь тыкает на тег на главной странице — он хочет увидеть страницы на заданную тему. А это мало чем отличается от поиска.
Поэтому все что я сделал — это задал заранее несколько поисковых фраз. То есть облако тегов состояло из ключевых слов, тем, которые характеризуют сайт заказчика. При этом, ссылка с каждого этого слова вела на поиск по этому слову (благо, он осуществляется через GET).
У такого решения есть плюсы и минусы. Плюсы в том, что пользователю не надо вести систему тегов, запоминать какие теги у него в системе, решать задачу релевантности текста тегу и так далее. Он просто пишет текст. Если в тексте встрчеается ключевое слово — он уже получает тег. Какбы автоматически. Это очень удобно и расширяемо для администратора сайта. И совсем не пыльно для разработчика. А пользователю, в конечном итоге, все равно как оно реализовано — он получает нужные результаты.
Недостаток у этого решения тоже есть. Например, если слово встречается в статье один раз и вскользь — статья уже попадет под этот тег. То есть, достаточно употребить ключевое словосочетание, пусть даже речь вообще не о нем, чтобы эта статья находилась. Это, конечно, может испортить удобство работы. Но при правильно заданных ключевых словах этот минус нивелируется.
К тому же, никто не запрещает сделать, например, ключевые слова одни, а поиск — по другим.
Допустим, у нас сайт про пластиковые окна. Разумеется там чуть не в каждой статье будет упоминаться ПВХ. В облаке тегов целесообразно показывать именно ПВХ. Но если искать по этому слову, то будет находиться слишком много мусорных статей, не про это. Эту проблему можно решить задав поиск более жестко. То есть, в облаке отображается "ПВХ", а поиск идет по "окно ПВХ особенность" или типа того. Более конкретный запрос, отдающий более точную выдачу.
Вот такой лайфхак. Мне понравилось, кстати и я теперь думаю — может реализовать нечто подобное и на своем сайте тоже. Потому что удобно, черт возьми. Не надо думать о тегах — они сами там как-то варятся, а ты можешь добавлять и удалять их просто добавляя и удаляя их из списка тегов.
Если есть сайт, где 100 статей и администратору вздумается придумать новый тег, то ему придется пробежаться по 100 статьям и добавить этот тег ко всем, где он будет к месту. В случае с тегами-поисковыми запросами этого делать не надо. Просто добавил в список тегов и все — уже работает.