Обмен опытом: шаг за шагом создаем свой форум на PHP

 | 10.53

Мой Компьютер, №4, 21.01.2008

Проблема выбора

Самыми известными в мире форумами являются IPB (Invision Power Board, www.invisionboard.com — достать не всегда возможно) и phpBB. Естественно, у начинающих разработчиков возникает вопрос: какой ставить? Попробуем разобраться. На первый взгляд, phpBB легок в установке, но когда дело касается дополнительных модулей, каковых не очень много, энтузиазм будущих web-администраторов понемногу стихает (впрочем, языковые модули ставятся на ура). В IPB все с точностью наоборот. С другой стороны, для phpBB очень легко изменить стиль, а с внешностью IPB наверняка даже Билл Гейтс с трудом управится. Также у IPB очень тяжело сменить язык, зато есть очень удобные модули (в. т.ч. онлайн-игры!).

(Не все «бесплатные» хостинги поддерживают PHP. Если у вас один из таких, проверьте эту фичу. Если поддержки нет, то, увы, вам не повезло — ни один из форумов не пойдет. Исключение — форумы narod.ru, их через мастерскую поставить можно.)

Для начала зайдем на phpbbguru.net и вытянем оттуда дистрибутив (532 Кб, tar), а также модули локализации — форума (49 Кб, zip) и стиля (18 Кб, zip).

Распаковываем форумный архив в папку с сайтом. Например, в сервере Денвер: X:homeсайтинаwwwforum (советую переименовать PHPBB2 в forum — удобнее) или X:homeсайтинаforum.

Не забудьте долить локализации: форума — rootlanguage, стиля — roottemplatessubSilverimages.

Затем заходим на сайт, в который вы положили форум, например: http://saytina.net/forum или http://forum.saytina.net.

Вводим все в поля: Имя пользователя обычно root, но могут быть и другие, вводим название БД… Стоп! Для начала ее не мешало бы создать — в MySQL.

E-mail пропускаем, все остальное оставляем как есть, нажимаем Начать установку и удаляем папки install и contrib из корня форума.

 

Погнали админить!

При первом запуске сразу выводится форма с логином и паролем. Логинимся и видим админ-панель.

Админ-панель построена более разумно, чем некоторые CMS, форумы и прочие интерактивы — на frameset’e.

Сразу лезем в Конфигурацию.

Настраиваем все на свой вкус. Мои рекомендации (те разделы, которые не указаны, я не изменял):

  • Название сайта и Описание сайта: каждый по-своему;
  • Порт веб-сервера — обычно 80, изменяется, если этого требует провайдер;
  • Путь к форумам — не меняем;
  • Отключить форумы — отключение форумов, если надо поработать над ними;
  • Стиль по умолчанию — советую поставить свой (о том, как ставить, читай ниже);
  • Стиль пользователя — я не запрещал, но если у вас стоит реклама в форуме, смену следовало бы запретить;
  • Формат даты — указывать латинскими буквами (в скобках указаны значения маленькой буквы): D — дата (день недели); M — месяц, G — час (час в 12-часовом формате), i — минуты, s — секунды;
  • Часовой пояс советую поменять на GMT +2 (хотя можно не менять, поскольку некоторые юзеры забывают выставить пояс при регистрации);
  • Сжатие экономит место, для больших форумов, советую поставить;
  • Чистку форумов можно выключить, но для больших серверов (и ленивых админов) советовал бы поставить.

Можно разрешить аватары, на ваш выбор — из галереи (если вы ее наполните), с сайта или собственные. Еще можно поменять максимально допустимый размер аватара, у меня он 25 600 байт (ровно 25 Кб, чтобы не мелочиться :)). Свои (общефорумные) аватары загружаем в imagesavatarsgallery разложенными по папкам (название папки — название категории, в которой будут рисунки).

Стильный форум = длинные руки админа. Советую загрузить скины из Интернета (phpbbguru.net) и слить все в папку templates. На левой части админ-панели выбираем Стили > Добавить. Кликаем возле стиля Установить.

Еще не мешало бы указать настройки e-mail. Причем со всеми функциями и SMTP, не ленитесь.

 Уголок расстроенного автора

К сожалению, стилей на русском очень мало (бытует мнение, что русифицирован один SubSilver). Но если приложить усилия и знания PHP+HTML, траблов не должно быть. Картинки скинов расположены в папке images, тексты в корне, что касается текстов админ-панели, они лежат в папке admin. Кодьте, камрады.

 Выход из уголка

 

Форумная мастерская

В разделе Форумы мы управляем категориями и форумами, правами и чисткой форумов. В первом подменю Управление мы создаем и редактируем категории и форумы. Во втором мы определяем, для каких групп юзеров предназначены эти форумы. При первом запуске надо удалить Test Category и Test Forum и создать свои. Удобно то, что к каждому форуму прилагается возможность добавить описание. Возле каждого форума указано количество тем в форуме и ответов на них. Каждый форумкатегорию можно удалить, сместить (вверх, вниз). Ссылка Синхронизация обновляет значение каждой темы. В разделе Права доступа есть возможность изменить доступ пользователям в определенной теме. Чистка форумов проводит внеплановое удаление старых тем.

 

Общие настройки

Бывает так, что БД сайта глючит или даже «падает». В таком случае не мешало бы создать резервную копию БД (см. меню админ-панели).

Впрочем, можно копировать только структуру (конфигурацию и структуру форума) или данные (темы, аватары и др.). Дополнительно можно добавить сжатие GZip.

Можно воспользоваться массовой рассылкой писем. Например, оповестить пользователей о переезде форума или технических проблемах. Если не настроен SMTP или нет функции локальной почты, то при отправке будет сообщение типа: «fatal error! Emailer.php on line 234». Восстановление позволяет из резервной копии восстановить форум (см. начало абзаца).

В phpBB можно даже редактировать смайлики в соответствующем разделе.

Автоцензор — это функция, которая блокирует нецензурные выражения. Даже если нецензурное слово было употреблено, система заменит его на предложенное вами.

В разделе группы можно создавать группы, которые будут модерировать определенные форумы. Подраздел Права доступа как раз и управляет модерацией. Выбираете группу и форум, в котором эта группа будет промышлять.

Модерирование форума

Понятие «модерирование» появилось именно в форумах (только потом оно перешло на чаты, блоги и т.п.). Суть модерирования состоит в том, чтобы облегчить работу админа форума (чата, блога и т.п.). Админ назначает модератора (в народе просто «модера»), который (в группе, в случае с нашим форумом, или вне ее) изменяет, удаляет, переносит темы или «посты». Пост — это сообщение в теме. Модеров в основном назначают за хорошие поступки. Например, поспособствовал «подъему» форума или набил в реале морду флудеру :), который заваливал форум совсем не тем, для чего был создан форум — рекламой, троллингом, оффтопами.

Управление пользователями

О рабовладельчестве речь не идет (хотя большинство админов не прочь были бы, чтобы пользователь с каким-нибудь модным ником }{[email protected]Бb!4 материализовал ему пивка :)).

Речь идет об управлении бан-листом (списком блокируемых пользователей, IP-шников и e-mail`ов), запрещенными никами, нецензурными выражениями, профилями пользователей, правами доступа (Be modder or not to be modder :)) и званиями. Итак, по порядку. Банить можно только по определенному параметру, то есть не получится банить юзера, если он сидит за определенным компом.

Внимание!!! Не ставьте бан на собственный IP, маску своего e-mail или имени, чтобы запретить другим выходить в ваш форум с вашего компа! Форум заблокируется и придется создавать новый! Данные при этом теряются!

В управлении профилями админ может изменять права пользователя, сделать его неактивным (нечто подобное бану) и т.п. Особая статья — раздел Звания. Здесь админ создает или изменяет звания пользователей, достигших определенного количества сообщений. Вот радость-то какая: был ты Начинающим, а стал Старшим Начинающим :). Поощрять можно за форумную активность и соблюдение правил хорошего тона. Например: избегать нецензурных выражений, ограничиваться в смайлах и читать FAQ!!!

 

Форумные термины

Бан — блокировка действий невоспитанного (или некультурного) пользователя.

Флуд — «атака» сообщениями для поучения выгоды (звания, например) (то есть, почетного титула, имеющего моральную ценность только на данном форуме — прим. ред.)

Спам — нежелательные сообщения рекламного характера.

Модератор, модер — пользователь с повышенными правами (маленький админ).

Админ — «Бог» форума (и не только…).

Пост — сообщение форума.

Топик — тема в форуме, иногда, id темы (указывают, чтобы можно было найти её).

BBCode — это особая реализация HTML, возможность использования BBCode определяется администратором (вы также можете отключить его в каждом создаваемом вами сообщении). BBCode очень похож на HTML, тэги в нем заключаются в квадратные скобки [ и ], а не < и >, он дает пользователю больше возможностей в создании сообщений.

Смайлики, или эмотиконы (менее распространенное) — это маленькие картинки, которые могут быть использованы для выражения чувств. Например, 🙂 значит радость, 🙁 — грусть. Полный список смайликов можно увидеть в форме создания сообщений. Только не перестарайтесь: сообщение из-за них может стать нечитаемым, и модератор может отредактировать его или вообще удалить.

 

Пользовательская сторона

Первое, что стоит сделать забредшему на форум пользователю, — зарегистрироваться. Ищем на верхней панели кнопку Регистрация (скриншот не даю, благо стиль может разниться). Соглашаемся с правилами форума и заполняем по возможности все поля (первые 5 пунктов обязательны). Время советую указать в формате D M d, Y G:i:s и верно указать пояс. Дальше внимательно читаем FAQ (чтоб никаких претензий к админу). Все, кто знаком с поисковыми системами (а таких в Интернете 99%), поймут форумный поиск. Группы я уже упомянул. Раздел Профиль позволяет изменить данные о вас. Система личных сообщений (ссылка между входом и профилями), «личка», «лс» позволяет отправлять и принимать приватные сообщения пользователю форума. В самом форуме каждый зарегистрированный пользователь может создать, изменить, процитировать тему или сообщение. А впрочем, все четко рассказано о пользовательской стороне форумов в статье Kiber-Mazaя «Раду радим радовую» (см. МК, №22 (453) за 2007 год).

Вот вроде бы все. Если есть вопросы, пишите

Кирилл ГАЛЬЧЕНКО

Robo User
Robo User
Web-droid editor