随着开源社区的日益繁荣,人们对社区品质的要求也越来越高。传统的 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 应用详情页面,点击右上角的 “变更”:
然后展开高级设置,修改运行命令和命令参数:
- 运行命令:
/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 提供的各项功能,如移动端友好的响应式设计、灵活的权限管理、丰富的互动方式等,都将为你的社区注入新的活力。