Требуется разработка системы тегов

Автор Roman, 02 июля 2013, 18:56:10

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Roman

Суть проблемы в общих словах:
Самая большая сложность использования всех форумов, как мне кажется, это поиск информации и соответственно, ее структуризация. Тем не менее, этому нюансу обычно уделяется довольно мало внимания, найти что-то на форумах обычно очень сложно. Рассовывание тем по десяткам разделов/подразделов и использование поиска решают далеко не все проблемы, в некоторых случаях найти требуемую информацию все равно трудно. Косвенное подтверждение этому - из раза в раз повторяющиеся вопросы новичков. Части из них вовсе не лень использовать поиск, просто они ничего не смогли найти. Тэги - отличный инструмент для восполнения этого пробела, но к сожалению, для форумов используются не очень активно. В данном случае, для SMF всего два мода - Tagging System For Topics и Tagging System SMFSIMPLE. Оба не очень широкой функциональности, второй показался более удобным, но в настоящий он сыроват и глючноват - у меня даже не заработал с кириллицей. Но возможно, допилят когда-то.


Требуется разработка мода системы тегов, со следующими характеристиками:


  • Теги можно назначить только для выбранных разделов (опционально три варианта - все разделы, кроме каких-то разделов, или только в выбранных разделах)
  • Пользователи (вместе с модераторами и администраторами) при создании/редактировании темы могут выбирать теги только из имеющегося списка. Общий список тегов могут редактировать Администратор и Модераторы (нужна настройка прав для групп).
  • Выбор тегов - желательно с помощью выпадающего списка с возможностью ввода и автоподстановкой. (пример реализации http://harvesthq.github.io/chosen/ - вариант "Selected and Disabled Support"/"Multiple Select")
  • Список тегов общий, но для отдельных разделов можно задавать персональный список тегов, доступный для выбора пользователями, куда входят не все теги из общего списка, а только отобранные.
  • В случае, если пользователь задает два одинаковых тега для своей темы, дублирующийся тег автоматически удаляется. Либо просто не позволять ему выбирать два одинаковых варианта, как это сделано в примере по ссылке выше.
  • Администраторы и модераторы могут редактировать теги для любой темы. Пользователь может редактировать теги в течении времени, которого он может редактировать и само сообщение.
  • При удалении тега из общего списка в админке, он удаляется из всех тем, где был прописан.
  • При редактировании тега в общем списке в админке, он меняется во всех темах, где использовался.
  • Можно сделать описание для каждого тега. Отображается на странице со списком тем по данному тегу, в случае, если поиск только одному тегу. (не критично, но желательно). Задается в админке.
  • Возможность поиска (вывода списка тем) сразу по двум тегам, с логикой "и".
  • Возможность поиска (вывода списка тем) по тегу только в выбранном разделе. По умолчанию, по клику на тег под темой, выводится список тем с таким тегом, расположенных только в аналогичном разделе. Вверху выведенного по тегу списка тем предлагается ссылка - показать все темы с данным тегом на всем форуме.
  • В отображаемом списке тем, найденных по тегу (тегам), возможна сортировка по: дате свежего ответа, по автору темы, по количеству ответов/просмотров, по дате создания темы. Отображаются столбцы: Название, Раздел, Автор, Ответов, Просмотров, Дата создания, Свежее сообщение.
  • В отображаемом списке тем, показывается значок "new" на непрочитанных пользователем темах (аналогично как в стандартных списках тем) / Опционально, можно задать отличающиеся стили для отображения блока непрочитанной темы.
  • Опциональное отображение списка похожих тем по тегам внутри темы, помеченной тегами (не критично, но очень желательно). Настройка максимального количества таких тем (Такая реализация есть в моде Tagging System SMFSIMPLE)
  • Возможность задать ограничение количества тегов для одной темы (а админке, либо в коде мода).
  • Теги могут состоять из двух, трех, - и даже семи слов. То есть, нужна поддержка тегов из нескольких слов.
  • Желательно отображение тега в адресной строке при запросе (ЧПУ) типа index.php?tag=coffee&soft_drinks / Если есть сложности с применением ЧПУ, с транслитерацией русскоязычных тегов, то не нужно, достаточно будет числовых идентификаторов.
  • Изменения, вносимые в БД форума, не должны затрагивать стандартные таблицы SMF.
  • Желательно, чтобы увеличение количества запросов к БД было не значительным (по сравнению с форумом без мода). То есть, важно, чтобы при использовании мода не было значительного увеличения нагрузки на сервер, и как следствие, замедления работы форума.
  • Страница с общим алфавитным списком всех тегов, доступная всем пользователям. Включать ссылку на эту страницу в меню форума НЕ нужно. Облако тегов - НЕ нужно.
  • Страницы с алфавитным списком тегов, доступных для определенного раздела (для разделов, в которых настроены свои списки тегов)
  • В общем списке тегов и списках тегов для разделов, рядом с каждым тегом отображается количество раз его использования.
  • Опциональная настройка - [теги обязательны для заполнения пользователем, или не обязательны] (Желателен промежуточный режим - когда теги не обязательны, но при их отсутствии выдается некое предложение-рекомендация заполнить их, что-то вроде "Вы не добавили теги: - добавить / - не добавлять)
Это пока не ТЗ, а общие наброски того, что нужно. При необходимости, конечно, могу сделать более детализировано. При последующем обсуждении ТЗ, возможно исключение некоторых пунктов, например, для удешевления разработки. Однако, сначала лучше ориентироваться на полный список.
Разумеется, очень важно качество, то есть, безглючность, надежность и безопасность итогового продукта разработки.


Технические данные: SMF 2.0.4
Установленных модов не много: dQuoteSelection, RegExp Verification Questions, Anti-SID(PHPSESSID) canonical tag, Attachments Positioning, Sitemap, Internal Links Use Same Window.
Кодировка форума: windows-1251
Тема оформления: Default Theme - Curve. Однако, существенно мной переработанная. Но, в любом случае, имеет смысл писать просто под Default Theme, и если где будет вылезать нестыковка с моей версией темы, пропишу код туда вручную.


Предлагайте условия по поводу данной разработки в личку.

Фисташка

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

Примерно на 10 движках, к которым имею доступ стандартным поиском пользуются 1-2 % юзеров.

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

Roman

Тэги, это как раз и есть продуманная часть юзабилити, по крайней мере, в моем случае:)
Для поиска у себя использую Яндекс + стандартный поиск, дополнительно дающий возможность искать внутри топика, который читаешь, или внутри раздела, в котором находишься. Гугловский тоже собирался добавить, но и от Яндекса нормально функционирует, не нравится лишь то, что он почему-то изредка вылетает с пометкой "поиск по сайту временно не работает", и отображает поиск по всему интернету.

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

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

У меня похожая задача: теги должны быть, своего рода, заменителем излишних разделов и подразделов. Когда разделов становится слишком много, это тоже не очень удобно, убедился в этом на практике. Что лучше - сделать штук 30 подразделов внутри раздела, или задать 30 основных тегов и вывести их вверху раздела (по нажатию на которые отображается список нужных тем) + уточняющие теги внутри тем? Кому как, и зависит от особенностей форума, но в моем случае нахожу теги намного более предпочтительными. Кроме того, нередко бывает, что одна и та же тема может относиться одновременно к нескольким разделам (хотя, это зависит от специфики форума и раздела), и тэги отлично решают эту проблему. В общем, при правильном подходе, оно должно хорошо работать. Именно поэтому, например, логичным представляется, чтобы теги задавались админами и модераторами, а пользователи могли только выбирать из готового списка.

kak2z

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