В популярном движке 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

  1. Делаем резервную копию файлов и БД. Никогда не пренебрегайте этим пунктом.
  2. Скачиваем с сайта 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
  3. На своем ПК распаковываем phpBB-3.0.7-PL1.zip в подкаталог \phpBB3,
    а phpbbforum-6.x-2.0-beta12.tar.gz в подкаталог \phpbbforum.
  4. Копируем содержимое каталога модуля .../phpbbforum/contrib/phpbbdrupal/root/styles в каталог форума /phpBB3/styles.
    там дополнительные стили для встроенного режима работы.
  5. Копируем каталог .../phpbbforum/contrib/phpbbdrupal/images сразу на хостинг в корень Drupal.
    Вместо этого можно скопировать файл /images/spacer.gif в любое другое место, но указать потом путь к нему в файле
    phpBB3\styles\prosilver-embed\template\editor.js в функции colorPalette(dir, width, height) (строка 335).
  6. Копируем файлы локализации:
    - содержимое файла 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\
  7. Применяем патч (подробнее о выпролнении 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'
  8. На хостинге удаляем содержимое подкаталога /phpBB3, оставив в нем только каталоги /files, /images и файл config.php.
  9. На своем ПК архивируем получивщийся каталог \phpBB3, копируем архив на хостинг и распаковываем там в корень Друпала (т.е. на прежнее место).
  10. Устанавливаем/проверяем права 777 на каталоги: /store, /cache, /files и /images/avatars/upload.
  11. В браузере запускаем  http://mydomain.ru/phpBB3/install/database_update.php. Форум обновлен.
  12. В панели управления сайтом на странице http://mydomain.ru/admin/build/modules отключаем модуль интеграции phpBBforum.
  13. На своем ПК архивируем папку \phpbbforum без каталога \contrib, копируем архив на хостинг в каталог /sites/all/modules/phpbbforum и распаковываем его там.
  14. Снова подключаем модуль на странице  http://mydomain.ru/admin/build/modules. Запускаем http://mydomain.ru/update.php.
  15. Переходим на http://mydomain.ru/admin/settings/phpbbforum и проверяем, нет ли сообщений об ошибках. Устанавливаем параметры по необходимости.
  16. На странице http://mydomain.ru/admin/user/permissions проверяем, чтобы для анонимных пользователей в разделе "модуль phpbbforum" были отмечены пункты:
    - access phpBB comments,
    - access phpBB forum.
    Иначе незарегистрированные пользователи при попытке перейти на форум получат сообщение о том, что им запрещен доступ к этому разделу.

Теперь сам форум и модуль интеграции обновлены.

Во вложении пропатченный для Drupal форум phpBB-3.0.7-PL1

Ссылка на скачивание: phpbb3.zip

 

ВложениеРазмер
Package icon phpbb3.zip2.84 MB

Рубрики: 

Ярлыки: 

Комментарии