Озадачился прикручиванием форума к существующему сайту на Yii. Сайт работает, уже есть база зарегистрированных пользователей.
Вопрос в следующем, брать ли сторонний форум и делать интеграцию с ним (авторизацию, таблицу юзеров) или же есть какое-то готовое решение уже на самом Yii, или же написать самому для начала простую реализацию форума, а потом постепенно его улучшать.
Если вы добавляли на свой сайт форум, то какой?
Как делали интеграцию с Yii?
В какой таблице БД хранили пользователей (в собственной или ‘форумной’)?
Я вижу несколько путей решения проблемы (некоторые плюсы и минусы):
Писать свой форум на Yii. Базовую функциональность написать несложно (категории, к ним привязка топиков, CRUD и тд). Плюсы: появится форум на Yii (коих я пока не видел). Минусы: чтобы довести до состояния полноценного форума нужно очень много времени.
Интегрировать какой-нибудь форум (например, phpBB). Основные задачи это синхронизация авторизации и регистрации между своим движком и форумным. Вопрос еще, как хранить данные пользователя: в своей таблице в БД или в форумной.
Так как сайт уже существует и для хранения данных пользователей используется своя таблица (таблицы) в БД, то очень бы хотелось не отказываться от нее, да и это не привязывает проект жестко к структуре форумной БД. Поэтому, я пока вижу следующее решение: это синхронизировать данные между двумя таблицами. При регистрации пользователя создавать данные как в своей таблице, так и в форумной. При авторизации, сначала авторизироваться на своем сайте, потом используя форумный движок авторизироваться уже как бы в форуме. При редактировании профиля надо еще подумать как поступить. Не очень хотелось бы иметь 2 разных формы редактирования профиля.
Плюсы подхода:
Не нужно писать свой форум, получаем готовый уже проверенный годами движок форума.
Минусы:
потеря производительности за счет синхронизации;
нужно время, чтобы разобраться как написать интеграцию, наверняка появятся какие-нибудь глюки и баги из-за такой синхронизации;
тоже нужно много времени, чтобы разобраться с кодом форума и понять, что и где менять (а менять придется во многих местах);
при выходе новой версии форума придется заново менять код ядра форума, чтобы использовать новую версию.
При выходе новой версии Yii также могут вылезти всякие мелкие неприятности
Я бы интегрировал уже имеющийся форум, но так, чтобы зависимость от его версии была минимальной. Буду очень рад, если кто-то отважится проделать это с phpbb
Однозначно ставить готовый форум - времени сэкономишь уйму. А регистрацию, как советовали выше, на форуме надо отключить: из своей системы можно регистрировать пользователей на лету.