Найти тему

Создай свой форум на Flarum

Оглавление

Всем привет друзья! Сегодня я бы хотел поделиться тем как можно создать свой форум на движке Flarum!

Официальный сайт движка

Почему в этой статье речь пойдёт о Flarum? - Flarum ещё не вышел из версии beta - тестирования, но уже имеет массу полезных дополнений.

Особенностью данного форума является то, что разработчики отказались от стандартной постраничной навигации, по этому интерфейс форума выглядит как бесконечная прокрутка ленты. В данном случае много внимания к себе привлекает ползунок прокрутки темы (дискуссии)

-2

Так же особенностью данного движка является то, что все манипуляции по установке самого форума и дополнений производятся в консоли SSH с использованием установщика пакетов Composer.

Для этого не обязательно иметь выделенный сервер, достаточно хостинга с поддержкой ssh выделяющим 2GB ОЗУ под выполнение скрипта Composer. В данном случае я советую REG.RU

И так, с чего нужно начать:

1. Взять хостинг с поддержкой PHP 7.2.9+, MySQL 5.6+, SSH-консоль

2. Зарегистрировать домен или привязать уже существующий

3. Создать БД MySQL

4. Установить форум.

Установка форума

В первую очередь нам придётся установить composer, в этом нам поможет полезная статья по его установке - Установка PHP Composer на виртуальном хостинге

В данном случае пойдёт речь о установке Composer на хостинге reg.ru, если Вы не собираетесь покупать отдельный сервер, то это пока лучшее решение относительно качества работы консоли SSH которое я находил.

ТК установка flarum ориентирована, на то, что Вы имеете свой собственный сервер, мы с вами пойдём обходным путём, для этого возьмём готовый установочный архив 0.1.0-beta.13 c русской локализацией с форума поддержки русскоязычных пользователей flarum.info, распаковываем архив в папку на хостинге к которой привязан домен, переходим по адресу своего домена - нас будет приветствовать страница установки

-3

Вводим данные БД и логин\пароль администратора, нажимаем install Flarum

Далее скрипт нас может попросить ввести ещё раз пароль от БД

-4

Ждём выполнения процесса и поздравляю, наш Flarum установлен!

-5

В нашем дистрибутиве предполагается наличие русской локализации, по этому переходим в админку

-6

Попадаем в админку нашего форума и выбираем вкладку Extensions (Расширения)

-7

По умолчанию русский язык выключен, включаем его, и отключаем английский (при желании английский можно оставить включенным, тогда на сайте будет возможность выбора языка)

-8

Далее идём в "Основные настройки" (Basics) и устанавливаем Русский по умолчанию

-9

На этом этапе мы имеем установленный форум с русской локализацией

Дальнейший материал статьи пока не актуален, в связи с возникшими проблемами после обновления на новую версию, но если Вы всё же обновились - просьба отписаться в комментариях.

Теперь мы можем обновиться до более новой версии Flarum используя SSH консоль и Composer

Внимание! У нас должен уже быть установлен Composer (на момент написания статьи я воспользовался своим аккаунтом на REG.RU , благо на счету были средства - взяв хостинг мне не пришлось устанавливать Composer - он уже был установлен!)
-10
Что касательно клиента SSH консоли - советую пользоваться XShell 7, Вы можете бесплатно воспользоваться бета-версией скачав её с официального сайта

Далее нам нужно в консоли перейти в папку с движком используя команду:

cd

В моём случае это:

cd public_html

Теперь когда мы находимся в нужной нам папке установим последнюю версию (на момент написания статьи) Flarum 0.1.0-beta.14 Released выполнив поочерёдно команды

composer update --prefer-dist --no-dev -a --with-all-dependencies
php flarum migrate
php flarum cache:clear

При обновлении пакета у меня возникала ошибка

-11

И так как Composer устанавливал не я, а он уже шёл из коробки - я сообщил о проблеме с службу поддержки REG.ru и они устранили её в течении 2х часов.

После обновления до 0.1.0-beta.14 у меня возникла такая ошибка при переходе на сайт:

-12

Пришлось в ручную чистить кэш в папке storage

Во всех этих папках нужно было удалить файлы кэша:

-13

Создание разделов форума

Перейдём к созданию разделов форума

-14

Здесь мы можем указать имя, описание, цвет категории, а так же её иконку, Flarum использует дистрибутив иконок Font Awesome Free и по этому Вы можете использовать их в качестве оформления категорий

Создадим раздел форума

Укажем имя, путь, описание, цвет и иконку.

Для того, чтобы установить иконку идём на официальный сайт дистрибутива шрифта Font Awesome и выберем иконку, в данном случае нам доступны иконки только из категории Free

Выберем нужную иконку и скопируем её класс

-15

При создании раздела вставляем класс в поле

-16

Сохраняем и наша первая категория готова

-17

Так же Вы можете создавать подкатегории, перетаскивая их в админке под родительскую категорию.

Расширения

Flarum хоть и находится на стадии бета тестирования, но уже имеет множество расширений, рассмотрим на примере расширение FriendsOfFlarum formatting.

Снова идём в консоль SSH и в папке с форумом выполняем команду

composer require fof/formatting

Ждём окончания установки пакета, после чего идём в админку во вкладку "Расширения" и видим, что у нас появилось новое расширение

-18

Включаем его и теперь нам нужно его настроить - переходим в настройки расширения

-19

Данное расширение предлагает нам возможность вставлять медиа-элементы со сторонних сайтов таких как например YouTube, VK, Soundcloud и т.д, для этого нужно включить эти функции в настройках расширения

-20

Сохраняем настройки, и пробуем создать тему с контентом в сообщении.

Пробуем вставить видео с YouTube

-21

Отправляем сообщение - получаем результат:

-22

Пробуем вставить трек с soundcloud

-23

Вроде работает))) Теперь мы хотим возможность прикреплять файлы к постам! Как это сделать? Установим расширение FriendsOfFlarum upload

Выполнив команду

composer require fof/upload

Упс! получаем ошибку при установке

-24

Видимо данное расширение ещё не обновилось до версии 0.1.0-beta.14

Подождём обновление, а пока результат нашей работы можно наблюдать по адресу nexrom.ru - не знаю как долго проживёт сайт, средств на продление хостинга и домена не имеется - по этому не удивляйтесь если получите ошибку 404)))

На этом пока всё! Думаю, что это не последняя моя статья и надеюсь, что для кого-то она будет полезна.