В популярном движке Drupal есть встроенная поддержка форума, но функционал встроенного в Drupal форума настолько убогий, что только самые непритязательные вебмастера либо фанатичные поклонники Drupal'а согласятся его использовать на реальном сайте. К счастью, есть не мало бесплатных форумных дывижков, а среди неимоверного количества доступных под Drupal модулей есть и специальные модули для интеграции сторонних движков в интерфейс сайта под Drupal. Пожалуй, наиболее удачным и самым широко распространенным из бесплатных является форумный движок phpBB3. Именно о нем и пойдет речь.
Установка форума phpBB3
Чистая установка самого форума без интеграции во внешний движок не вызывает сложностей. Пошаговая инструкция по установке выглядит примерно так:
-
Скачиваем последнюю версию с офсайта phpbb.com и распаковываем архив на своем ПК в каталог
\phpBB3
. - Скачиваем последние версии файлов русского перевода с http://www.phpbb.com/languages/; это 3 файла: общий и картинки для двух встроенных стилей.
-
Копируем файлы локализации:
- содержимое файлаlang_ru.zip
в каталог\phpBB3\language
- содержимое каталогаprosilver_ru.zip\prosilver\imageset\
в каталог\phpBB3\styles\prosilver\imageset\
- содержимое каталогаsubsilver2_ru.zip\subsilver2\imageset\
в каталог\phpBB3\styles\subsilver2\imageset\
- Архивируем полученный вариант (с локализацией), копируем на хостинг и там распаковываем в подкаталог \phpBB3 от корня Drupal.
- Создаем на хостинге базу данных для форума, не забыв поменять для неё "Сравнение" (в некоторых версиях phpMyAdmin - "Сопоставление") на "utf8_general_ci". Подробнее об этом в статье "Кириллица на буржуйском хостинге".
-
На хостинге устанавливаем разрешения:
- для файлаconfig.php
= 666,
- для каталоговstore/, cache/, files/
иimages/avatars/upload/
= 777. - С помощью браузера переходим в подкаталог INSTALL. Например, если используется домен mydomain.ru, а форум установлен в подкатолог \phpBB3, то в строке браузера нужно набрать http://mydomain.ru/phpBB3/install
- Переходим на закладку INSTALL (или её русифицированный вариант) и по шагам заполняем всю необходимую информацию о БД.
-
Возвращаем разрешение для файла
config.php
= 644 и удаляем каталог INSTALL
Форум готов. Там много еще чего можно/нужно настроить, но он уже работает.
Интегрированная установка выглядит несколько сложнее, т.к. включает в себя 3 задачи:
- установка форума phpBB3,
- установка модуля интеграции для Drupal,
- адаптация форума к работе в интерфейсе основного сайта.
Мы же ниже рассмотрим обновление как самого форума phpBB3, так и модуля интеграции для Drupal. Конкретно, в данном примере форум обновляется с версии 3.0.5 до версии 3.0.7, а модуль для Drupal с версии 6.x-2.0-beta6 до версии 6.x-2.0-beta12.
(О версии phpBB3-3.0.8 написано здесь)
Обновление форума phpBB3 на Drupa
- Делаем резервную копию файлов и БД. Никогда не пренебрегайте этим пунктом.
-
Скачиваем с сайта drupal.org модуль phpbbforum-6.x-2.0-beta12.tar.gz,
а с сайта phpbb.com архив самого форума phpBB-3.0.7-PL1.zip и файлы локализации: lang_ru.zip, prosilver_ru.zip, subsilver2_ru.zip -
На своем ПК распаковываем phpBB-3.0.7-PL1.zip в подкаталог \phpBB3,
а phpbbforum-6.x-2.0-beta12.tar.gz в подкаталог \phpbbforum. -
Копируем содержимое каталога модуля .../phpbbforum/contrib/phpbbdrupal/root/styles в каталог форума /phpBB3/styles.
там дополнительные стили для встроенного режима работы. -
Копируем каталог .../phpbbforum/contrib/phpbbdrupal/images сразу на хостинг в корень Drupal.
Вместо этого можно скопировать файл /images/spacer.gif в любое другое место, но указать потом путь к нему в файле
phpBB3\styles\prosilver-embed\template\editor.js в функции colorPalette(dir, width, height) (строка 335). -
Копируем файлы локализации:
- содержимое файла lang_ru.zip в каталог phpBB3\language
- содержимое каталога prosilver_ru.zip\prosilver\imageset\ в каталоги phpBB3\styles\prosilver\imageset\ и в phpBB3\styles\prosilver-embed\imageset\
- содержимое каталога subsilver2_ru.zip\subsilver2\imageset\ в каталоги phpBB3\styles\subsilver2\imageset\ и в phpBB3\styles\subsilver2-embed\imageset\ -
Применяем патч (подробнее о выпролнении patch под Windows в статье "Выполняем patch под Windows") для интеграции интерфейса форума в дизайн сайта.
Для этого копируем phpbbforum\contrib\phpbbdrupal\root\phpBB-embed-3.0.7.patch в /phpBB3
открываем коммандную строку в этом каталоге и выполняем команду:
patch -p0 < phpBB-embed-3.0.7.patch
Внимательно смотрим на результат выполнения этой команды. Если в ответе:
patching file './faq.php'
Assertion failed: hunk, file patch.c, line 321
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
То необходимо пересохранить патч текстовым редактором, который поменяет никсовые переводы каретки на стиль windows. Для этого подойдет практически любой кроме штатного Блокнота, например, AkelPad или Rapid CSS. После пересохранения размер файла phpBB-embed-3.0.7.patch должен немного увеличиться. Если команда обрабатывается нормально, то в ответе мы видим следующее:
patching file './faq.php'
patching file './feed.php'
patching file './includes/functions_display.php'
patching file './includes/functions_messenger.php'
patching file './includes/functions_module.php'
patching file './includes/functions.php'
patching file './includes/functions_user.php'
patching file './includes/mcp/mcp_ban.php'
patching file './includes/mcp/mcp_forum.php'
patching file './includes/mcp/mcp_front.php'
patching file './includes/mcp/mcp_main.php'
patching file './includes/mcp/mcp_notes.php'
patching file './includes/mcp/mcp_pm_reports.php'
patching file './includes/mcp/mcp_post.php'
patching file './includes/mcp/mcp_queue.php'
patching file './includes/mcp/mcp_reports.php'
patching file './includes/mcp/mcp_topic.php'
patching file './includes/mcp/mcp_warn.php'
patching file './includes/session.php'
patching file './includes/ucp/ucp_confirm.php'
patching file './includes/ucp/ucp_groups.php'
patching file './includes/ucp/ucp_main.php'
patching file './includes/ucp/ucp_pm_compose.php'
patching file './includes/ucp/ucp_pm.php'
patching file './includes/ucp/ucp_pm_viewmessage.php'
patching file './includes/ucp/ucp_profile.php'
patching file './includes/ucp/ucp_register.php'
patching file './index.php'
patching file './mcp.php'
patching file './memberlist.php'
patching file './posting.php'
patching file './report.php'
patching file './search.php'
patching file './ucp.php'
patching file './viewforum.php'
patching file './viewonline.php'
patching file './viewtopic.php' - На хостинге удаляем содержимое подкаталога /phpBB3, оставив в нем только каталоги /files, /images и файл config.php.
- На своем ПК архивируем получивщийся каталог \phpBB3, копируем архив на хостинг и распаковываем там в корень Друпала (т.е. на прежнее место).
- Устанавливаем/проверяем права 777 на каталоги: /store, /cache, /files и /images/avatars/upload.
- В браузере запускаем http://mydomain.ru/phpBB3/install/database_update.php. Форум обновлен.
- В панели управления сайтом на странице http://mydomain.ru/admin/build/modules отключаем модуль интеграции phpBBforum.
- На своем ПК архивируем папку \phpbbforum без каталога \contrib, копируем архив на хостинг в каталог /sites/all/modules/phpbbforum и распаковываем его там.
- Снова подключаем модуль на странице http://mydomain.ru/admin/build/modules. Запускаем http://mydomain.ru/update.php.
- Переходим на http://mydomain.ru/admin/settings/phpbbforum и проверяем, нет ли сообщений об ошибках. Устанавливаем параметры по необходимости.
-
На странице http://mydomain.ru/admin/user/permissions проверяем, чтобы для анонимных пользователей в разделе "модуль phpbbforum" были отмечены пункты:
- access phpBB comments,
- access phpBB forum.
Иначе незарегистрированные пользователи при попытке перейти на форум получат сообщение о том, что им запрещен доступ к этому разделу.
Теперь сам форум и модуль интеграции обновлены.
Во вложении пропатченный для Drupal форум phpBB-3.0.7-PL1
Ссылка на скачивание: phpbb3.zip
Вложение | Размер |
---|---|
![]() | 2.84 MB |
Комментарии
огромное спасибо автор-у(-ам)
огромное спасибо автор-у(-ам) сайта "Азбука WEB" за предоставленную статью о патчинге в окнах http://azbukaweb.ru/run-patch-for-windows
Спасиб за статью, проблема у
Спасиб за статью, проблема у меня как раз и была в пересохранении phpBB-embed-3.0.7.patch.
Было б круто если б ты
Было б круто если б ты выложил патч, а то проблема его сделать на хостинге.
Дак, здесь как раз о том и
Дак, здесь как раз о том и рассказано, как выполнить patch на своем ПК под Windows. Но, на всякий случай, пропатченный архив приложен.
и где он приложен? ссылку в
и где он приложен? ссылку в студии пожалуйста.
Да, пардоньте, со вложением
Да, пардоньте, со вложением недоразумение вышло. Теперь сразу 2 ссылки на один и тот же файл. Потом лишнюю уберу.
НЕ получается сделать
НЕ получается сделать встроенный дизайн форума в дизайн друпала
Что конкретно не получается?
Что конкретно не получается? Форум вообще не работает или не выглядит встроенным?
Для того, чтобы форум был "внутри" сайта нужно выбрать стиль с суффиксом "embed" в названии. Всего в поставке 4 стиля (у меня было):
- subsilver2
- prosilver
- subsilver2-embed
- prosilver-embed.
Т.е. нужно выбрать один из двух последних. Причем самый последний у меня как-то коряво выглядел и выбора совсем не осталось. Годный только "subsilver2-embed". Да и то, на сколько помню (смутно), там тоже допиливать пришлось чуток. Но это мелочи.