随着开源社区的日益繁荣,人们对社区品质的要求也越来越高。传统的 BBS 论坛模式已经难以满足现代用户对美观、便捷、互动性的需求。搭建一个现代化的高品质社区,成为许多网站管理者的迫切需求和共同挑战。

今天就给大家安利一款现代化的、优雅的开源论坛软件 - Flarum。

Flarum 以现代简约的设计理念、卓越的用户体验、强大的可扩展性,重新定义了我们对网络社区的想象。

Flarum 简介

Flarum 是一个诞生于 2014 年的开源论坛软件项目。创始人 Toby Zerner 和 Franz Liedke 希望创建一个现代化的、优雅的论坛系统,以应对传统论坛软件在界面设计、用户体验、可扩展性等方面的不足。

经过两年的开发,Flarum 在 2015 年发布了第一个公开 Beta 版本,迅速吸引了大量开发者和社区运营者的关注。此后,Flarum 不断迭代更新,社区不断壮大,逐渐成长为论坛软件领域的一颗新星。

Flarum 的设计理念可以概括为 “现代、简约、优雅”。它摒弃了传统论坛软件臃肿、复杂的设计,转而追求简洁明了的界面布局和流畅自然的用户交互。

目前该项目在 GitHub 上已经收获了 15K Star。

Flarum 功能特色

Flarum 的主要特点包括:

  • 扁平化、响应式的界面设计,适配不同尺寸的设备。
  • 简单直观的用户操作流程,降低使用门槛。
  • 细粒度的用户权限管理,满足社区的管理需求。
  • 丰富的社交互动功能,如点赞、@提及、实时通知等。
  • 强大的可扩展性,支持通过插件和 API 进行功能扩展。

Flarum 的技术架构

Flarum 采用了当今流行的前后端分离架构。后端基于全世界最好的语言 PHP 和 Laravel 框架开发,提供 RESTful API 接口;前端则使用 JavaScript 语言和 Mithril.js 框架编写,实现了单页应用 (SPA) 的用户界面。这种现代化的架构设计赋予了 Flarum 更好的性能、灵活性和可维护性。

同时,Flarum 还利用了诸如 Composer、WebSocket 等现代 Web 开发技术,进一步提升了系统的性能和实时性。

Flarum vs 传统 BBS 论坛

特性 Flarum 传统 BBS 论坛
界面设计 现代、简约、美观 相对老旧、界面复杂
移动端适配 响应式设计,自动适配不同屏幕 大多未针对移动端优化
社交互动 点赞、@提及、站内通知等丰富的互动功能 互动形式相对单一
实时性 内容更新近乎实时,无需刷新页面 实时性相对较弱
可扩展性 模块化设计,支持插件扩展功能 可扩展性相对有限
用户权限管理 细粒度的用户组权限设置 通常也有比较完善的权限管理
功能丰富程度 相对较新,功能还在不断完善中 经过多年发展,功能非常丰富
用户习惯 现代化的界面和交互方式可能需要用户适应 很多用户已经习惯了传统 BBS 的使用方式

Flarum 安装使用

要安装运行 Flarum,你的服务器需要满足以下环境要求:

  • Web 服务器:Apache (需要 mod_rewrite) 或 Nginx。
  • PHP 7.4 及以上版本,需要启用 Fileinfo,Mbstring,OpenSSL,PDO,Tokenizer,XML,Ctype,JSON,GD 等 PHP 扩展。
  • MySQL 5.6+ 或 MariaDB 10.0.5+。
  • SSH (命令行) 访问,用于运行 Composer。

可以看出来其依赖的技术环境相对还是比较复杂的,手动安装和配置的过程可能会让非技术背景的用户望而却步

对于没有技术背景的同学而言,你也不用担心安装问题,Sealos 应用商店提供了一键部署的应用模板,点一下鼠标即可完成部署,非常丝滑。

如果你想快速搭建一个 Flarum 论坛,又不想陷入繁琐的安装和配置过程,可以试试 Sealos。

直接打开 Flarum 应用模板,然后点击右上角的 “去 Sealos 部署”。

如果您是第一次使用 Sealos,则需要注册登录 Sealos 公有云账号,登录之后会立即跳转到模板的部署页面。

点击右上角的 “部署应用” 开始部署,部署完成后,直接点击应用的 “详情” 进入该应用的详情页面。

等待应用状态变成 running 之后,直接点击外网地址便可打开 Flarum 的可视化界面。

点击右上角的 “Log In” 登录管理员账号:

  • 用户名:flarum
  • 密码:flarum

打开管理员后台,就可以对论坛进行各种自定义设置了。

由于国内特殊的网络环境,在进行下一步之前,我们需要先把论坛的软件源替换成国内的源,不然将寸步难行。

修改 Flarum 软件源

在 Flarum 应用详情页面,点击右上角的 “变更”:

然后展开高级设置,修改运行命令和命令参数:

  • 运行命令:/bin/bash -c
  • 命令参数:sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories && apk update && apk add git && composer config repo.packagist composer https://mirrors.aliyun.com/composer/ && /init

修改完成后,点击右上角的 “变更” 即可。

等待应用重启完成,便可重新打开论坛界面。

个性化设置

通过自定义主题,你可以让你的论坛独具一格,彰显社区的特色。配色方案、导航栏样式、Logo、背景图片,这些都可以自定义。

但首先,我们需要安装一个中文语言包。

安装中文语言包

在 Flarum 应用详情界面,点击右下角的终端按钮:

在打开的终端中执行以下命令安装中文语言包:

extension require flarum-lang/chinese-simplified:dev-master

安装成功:

进入管理员后台可以看到多了个中文语言:

直接点击这里开启中文语言:

然后回到 Basics,将 Default Language 改为简体中文,最后点击下方的 Save Changes,论坛的语言就变成中文啦。如果没有切换就刷新一下页面。

常规设置

接下来进行一些常规的设置,例如论坛名称、论坛描述、欢迎横幅等等。

设置完成后,欢迎横幅是这个样子的:

这可不太美观的,咱直接让它向左对齐,别居中了。怎么改呢?很简单,在 “外观” 中点击 “编辑自定义 CSS”:

然后填入以下 CSS:

.Hero-close {
float: right;
margin-top: -10px;
color: inherit;
opacity: 0.5;
visibility: hidden;
}
.Hero h1 {
margin: 0;
font-weight: bold;
line-height: 1.5em;
}
.containerNarrow {
max-width: none;
margin: 0 auto;
text-align: left;
}

保存之后再刷新页面就变成这个样子了:

这下舒服多了。

除此之外,还可以设置论坛的配色和 Logo 等。

页眉和页脚也是可以自定义的,例如 Sealos 官方论坛 (https://forum.laf.run) 的自定义页脚:

<div class="footer" style="padding:0 15px;">
<p style="text-align: center;">
Copyright 2023 by <a style="padding: 0 3px;" href="https://sealos.run/" target="_blank"><b>sealos.run</b></a>
</p>
<p style="text-align: center;">
声明:除非另有说明,否则本站内容依据 <a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.zh" target="_blank">CC BY-SA 4.0</a> 许可证进行授权,转载请附上出处链接。
</p>
<p style="text-align: center;">
️ <a href="https://sealos.run/" target="_blank" style="font-weight:bold; color:transparent;background-image:linear-gradient(to right,#0ea5e9,#2563eb);-webkit-background-clip: text;background-clip: text">Sealos</a> | <a href="https://sealos.run/zh-Hans/company" target="_blank">About</a>
</p>
</div>

最终效果如下:

主题推荐

推荐一个主题,GitHub 地址:https://github.com/DellZHackintosh/fluent-flarum

安装方法和之前一样,在 Flarum 应用详情界面,点击右下角的终端按钮:

在打开的终端中执行以下命令安装:

extension require dalez/fluent-flarum

安装完成后,在管理员后台开启。

最终效果:

常用插件推荐

Flarum 的一大魅力在于它的可扩展性。通过安装各式各样的插件,你可以为你的论坛添加新的功能和特性,满足社区的特定需求。无论是增强 SEO 表现、集成第三方身份验证,还是支持全文搜索、实现实时聊天,总有一款插件能够满足你的需要。

以下是一些常用的优质插件:

  • FoF User Directory:为论坛添加用户目录页面,方便浏览和搜索用户。安装方法:extension require fof/user-directory:"*"
  • FoF Filter:帮助论坛管理员自动审核和过滤用户生成的内容。安装方法:extension require fof/filter:"*"
  • FoF Links:让你在论坛的导航栏、侧边栏或页脚添加自定义链接,方便用户快速访问论坛内外的重要页面。安装方法:extension require fof/links
  • SEO:专注于 SEO 优化。安装方法:extension require v17development/flarum-seo
  • Discussion views:显示每个话题 (讨论) 的浏览量,让用户和管理员一目了然地看到社区内容的受欢迎程度。安装方法:extension require michaelbelgium/flarum-discussion-views
  • Echo showfloor:像百度贴吧一样显示楼层。安装方法:extension require wanecho/showfloor:"*"
  • Emoji Picker:让用户在论坛中方便地插入表情符号,与论坛自带的 Emoji 插件冲突,需要先禁用默认的 Emoji 插件。安装方法:extension require clarkwinkelmann/flarum-ext-emojionearea
  • Fancybox-Plus:为 Flarum 论坛提供图片浏览增强功能,安装之后点击图片将会弹出一个优雅的图片浏览界面。安装方法:extension require tohsakarat/fancybox-plus
  • FoF Sitemap:为 Flarum 论坛提供站点地图 (Sitemap) 功能,提升网站的 SEO 表现。安装方法:extension require fof/sitemap

太多了,本文就不一一介绍了,更多插件可到 Flarum 插件市场去找:https://flarum.org/extensions

注意:安装插件时,一律将安装命令中的 composer 替换为 extension。例如以下插件的官方安装命令为 composer require michaelbelgium/flarum-discussion-views

在 Sealos 的终端中安装时就需要改成 extension require michaelbelgium/flarum-discussion-views

总结

Flarum 以其简约美观的界面设计、强大的功能特性和良好的可扩展性,正在吸引越来越多的社区运营者和用户的关注。

选择 Flarum,你将获得一个开箱即用的现代化社区平台。不必在复杂的技术细节上耗费太多心力,而是可以专注于社区的实际运营和发展。Flarum 提供的各项功能,如移动端友好的响应式设计、灵活的权限管理、丰富的互动方式等,都将为你的社区注入新的活力。

Flarum 安装和使用教程的更多相关文章

  1. CentOS7下自定义目录安装mono+jexus教程

    一.阅读前须知: 1.本文属于安装完Centos7之后的步骤 2.如果还不了解mono,请点击mono 3.本篇主要内容是使用自定义目录安装mono+jexus教程,使用默认目录请查看使用默认目录安装 ...

  2. 【转】真正从零开始,TensorFlow详细安装入门图文教程!(帮你完成那个最难的从0到1)

    AI这个概念好像突然就火起来了,年初大比分战胜李世石的AlphaGo成功的吸引了大量的关注,但其实看看你的手机上的语音助手,相机上的人脸识别,今日头条上帮你自动筛选出来的新闻,还有各大音乐软件的歌曲& ...

  3. CentOS7下默认目录安装mono+jexus教程

    一.阅读前须知: 1.本文属于安装完Centos7之后的步骤 2.如果还不了解mono,请点击mono 3.本篇主要内容是使用默认目录安装mono+jexus教程,使用自定义目录请查看使用自定义目录安 ...

  4. << CocoaPods安装和使用教程 >>github code4app以及cocoachina 苹果官方文档

    developer.apple.com 英文搜索各个技术的官方介绍文档, 前提是英文过关 cocoachina ios最新新闻, 信息 code4app上有许多组件 http://www.code4a ...

  5. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  6. NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者

    NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者 作者: raindy 来源:http://bbs.hanzify.org/index.php?showtopic=30029 时间: ...

  7. 安装WordPress详细教程指南

    最近准备自己建一个个人博客,以便分享一些自己工作生活中的一些观点及经验,建博客当然选wordpress,毕竟wordpress是为博客而生的嘛.下边记录一下自己安装WordPress的详细过程指南,亦 ...

  8. 纯windows下制作变色龙引导安装U盘教程

    原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...

  9. 最详细在Windows安装Xamarin.iOS教程

    最详细在Windows安装Xamarin.iOS教程 来源:http://www.cnblogs.com/llyfe2006/articles/3098280.html 本文展示了如何设立Xamari ...

  10. 【转】Android Studio安装配置学习教程指南 下载和安装--不错

    背景 相信大家对Android Studio已经不陌生了,Android Studio是Google于2013 I/O大会针对Android开发推出的新的开发工具,目前很多开源项目都已经在采用,Goo ...

随机推荐

  1. 创新推出 | Serverless 场景排查问题利器:函数实例命令行操作

    ​简介: 实例命令行功能的推出希望能消除用户使用 Serverless 的"最后一公里",直接将真实的函数运行环境展现给用户,此后 Serverless 将不再是一个"黑 ...

  2. 数据智能构建管理平台Dataphin V2.9.4.3版本发布

    简介: Dataphin发布V2.9.4.3版本升级多项产品能力,该版本在产品功能和用户体验上都进行了优化和提升,旨在为用户提供更完善的产品能力和体验,以加速企业数据中台建设进程. -更多关于数智化转 ...

  3. [Roblox] 从障碍跑入门构建基础平台游戏_罗布乐思

      对于障碍跑来说,底板部分是可以不需要的 这样掉下障碍物就结束游戏,Baseplate 可以在右侧资源管理器 选中后Delete. SpawnLocation 标记玩家在游戏开始时或重新开始后在世界 ...

  4. dotnet 是否应该对 HttpResponseMessage 调用 Dispose 进行释放

    对于 HttpClient 的请求响应值 HttpResponseMessage 来说,既然继承了 IDisposable 接口,自然就是想让大家可以通过 using 或者手动调用 Dispose 进 ...

  5. dotnet 已知问题 使用 Directory.EnumerateXXX 方法枚举 C 盘根路径可能错误的问题

    在 dotnet 里面,可以使用 Directory.EnumerateXXX 系列方法进行枚举文件或文件夹.在准备枚举驱动器根路径的文件或文件夹时,可能获取到错误的路径.错误的步骤在于传入的是如 C ...

  6. sendmail发送慢的问题

    1.使用python的脚本,发送邮件.代码如下: 点击查看代码 [root@ZabbixServerMasterNode ~]# cd /etc/zabbix/alertscripts/ [root@ ...

  7. kali使用apt-get update 出现数字签名失效

    kali使用apt-get update 出现数字签名失效 下载签名:wget archive.kali.org/archive-key.asc 安装签名:apt-key add archive-ke ...

  8. 谈谈 Spring 的过滤器和拦截器

    前言 我们在进行 Web 应用开发时,时常需要对请求进行拦截或处理,故 Spring 为我们提供了过滤器和拦截器来应对这种情况.那么两者之间有什么不同呢?本文将详细讲解两者的区别和对应的使用场景. ( ...

  9. C 语言编程 — 基本语法

    目录 文章目录 目录 前文列表 C 语言 C 语言的版本 C 语言的特点 C 语言的优点 C 语言的缺点 搭建编程环境 基本语法 前文列表 <程序编译流程与 GCC 编译器> C 语言 C ...

  10. AIRIOT训练营沈阳站圆满结束|手把手教你搞定物联网应用开发

    8月28日-9月1日,由航天科技控股集团有限公司(以下简称"航天科技")主办的<AIRIOT物联网平台应用与实战>训练营在沈阳圆满结束,来自上海电机学院.中渝软通信息技 ...