Post Albums
wszdb/flarum-postalbums
A Flarum extension for users to create post albums and collections
- Downloads
- 73
- Version control
- github.com/wszdb/flarum-postalbums
Flarum 帖子专辑插件 (PostAlbums)
一个功能强大的 Flarum 扩展,类似Discuz!的淘专辑,允许用户创建专辑来收藏和组织论坛中的帖子。
✨ 主要功能
📚 专辑管理
- 创建专辑:用户可以创建自己的专辑,设置标题和简介
- 收藏帖子:将喜欢的帖子添加到专辑中
- 专辑关注:关注其他用户的专辑
- 专辑广场:浏览所有公开的专辑
🎯 推荐专辑 (新功能)
- 智能推荐:在帖子页面自动推荐相关专辑
- 三种位置:可选择在第一个帖子后、最后一个帖子后或回复框位置显示
- 随机展示:从有收藏内容的专辑中随机选择展示
- 引导创建:当推荐数量不足时,引导用户创建新专辑
- 美观卡片:采用现代化卡片设计,响应式布局
📢 公告功能 (新功能)
- 自定义公告:在专辑列表页显示管理员设置的公告或帮助信息
- 支持超链接:可以添加教程、规则等链接
- 支持换行:多段落内容展示
- 安全过滤:自动过滤不安全的 HTML 内容
⚙️ 灵活配置
- 自定义按钮文字:可自定义"加入专辑"按钮的显示文字
- 访问控制:可设置是否允许游客访问
- 数量限制:可限制每个用户的专辑数量和每个专辑的收藏数
- 排序方式:支持多种排序方式(最新创建、最多关注、随机)
📸 功能截图
推荐专辑展示
┌─────────────────────────────────────────────────────────────┐
│ 推荐专辑 进入广场 → │
├─────────────────────────────────────────────────────────────┤
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │专辑标题 │ │专辑标题 │ │+ 创建 │ │
│ │专辑简介 │ │专辑简介 │ │ 专辑 │ │
│ │👤 作者 │ │👤 作者 │ │ │ │
│ │📖 5 ❤️ 3│ │📖 3 ❤️ 2│ │创建你的 │ │
│ └──────────┘ └──────────┘ │社区专辑 │ │
│ └──────────┘ │
└─────────────────────────────────────────────────────────────┘
专辑列表页公告
┌─────────────────────────────────────────────────────────────┐
│ 帖子专辑 [创建专辑] │
├─────────────────────────────────────────────────────────────┤
│ 📢 欢迎使用帖子专辑功能! │
│ │
│ 使用帮助:查看详细教程 │
├─────────────────────────────────────────────────────────────┤
│ [专辑广场] [我的专辑] [我的关注] │
│ ... │
└─────────────────────────────────────────────────────────────┘
🚀 安装
使用 Composer 安装
composer require wszdb/flarum-postalbums
手动安装
- 下载插件文件
- 解压到
packages/flarum-postalbums目录 - 运行以下命令:
cd packages/flarum-postalbums
composer install
npm install
npm run build
- 在 Flarum 后台启用插件
⚙️ 配置说明
进入 Flarum 后台 → 扩展 → PostAlbums,可以配置以下选项:
基础设置
| 设置项 | 说明 | 默认值 |
|---|---|---|
| 前台显示名称 | 专辑功能在前台的显示名称 | 帖子专辑 |
| 加入专辑按钮文字 | 帖子下方按钮的文字 | +专辑 |
| 允许游客访问 | 是否允许未登录用户查看专辑 | 否 |
推荐专辑设置
| 设置项 | 说明 | 默认值 |
|---|---|---|
| 显示推荐专辑 | 是否在帖子页面显示推荐专辑 | 否 |
| 推荐专辑显示位置 | 选择推荐专辑的显示位置 | 最后一个帖子后 |
| 推荐专辑数量 | 显示的推荐专辑数量(1-10) | 2 |
显示位置选项:
- 第一个帖子后:适合活跃社区,提高曝光
- 最后一个帖子后:适合阅读为主,不打扰(推荐)
- 回复框位置:适合互动导向,引导参与
公告设置
| 设置项 | 说明 | 限制 |
|---|---|---|
| 专辑列表页公告 | 显示在专辑列表页标题下方的公告 | 最多200字 |
支持的格式:
- ✅ 超链接:
<a href="URL">文字</a> - ✅ 换行:直接按回车或使用
\n - ❌ 其他 HTML 标签会被自动过滤
公告示例:
欢迎使用帖子专辑功能!
使用帮助:<a href="/d/123">查看详细教程</a>
问题反馈:<a href="/d/456">点击这里</a>
限制设置
| 设置项 | 说明 | 默认值 |
|---|---|---|
| 创建专辑所需主题数 | 用户需要发布多少个主题才能创建专辑 | 0(无限制) |
| 专辑标题最大长度 | 专辑标题的最大字符数 | 100 |
| 专辑简介最大长度 | 专辑简介的最大字符数 | 500 |
| 每个用户最多创建专辑数 | 限制单个用户可创建的专辑数量 | 10 |
| 每个专辑最多收藏数 | 限制单个专辑可包含的帖子数量 | 1000 |
显示设置
| 设置项 | 说明 | 默认值 |
|---|---|---|
| 专辑列表每页显示数 | 专辑广场每页显示的专辑数量 | 20 |
| 专辑详情每页显示数 | 专辑详情页每页显示的帖子数量 | 10 |
| 专辑默认排序方式 | 专辑广场的默认排序方式 | 最新创建 |
排序方式选项:
- 最新创建:按创建时间倒序
- 最多关注:按关注人数倒序
- 随机排序:有收藏的专辑在前且随机,无收藏的在后且随机
💡 使用场景
1. 知识整理
用户可以创建"前端开发教程"、"后端技巧"等专辑,收藏相关的优质帖子。
2. 资源收集
创建"实用工具推荐"、"优秀插件"等专辑,整理有用的资源。
3. 话题追踪
创建"项目讨论"、"问题汇总"等专辑,跟踪特定话题的讨论。
4. 个人收藏
创建"我的收藏"专辑,保存自己感兴趣的内容。
5. 社区推荐
通过推荐专辑功能,让用户发现更多优质内容和专辑。
🎨 样式定制
插件提供了完整的 LESS 样式文件,可以通过自定义 CSS 来调整外观:
// 推荐专辑样式
.RecommendedAlbums {
margin: 30px 0;
padding: 20px;
background: #f8f9fa;
border-radius: 8px;
}
// 公告样式
.AlbumsPage-notice {
background: #e3f2fd;
border-left: 4px solid #2196f3;
padding: 15px 20px;
}
🔧 开发
编译前端资源
npm install
npm run build
开发模式
npm run dev
📝 更新日志
Version 1.2.0 (2025-11-08)
新增功能
-
✨ 推荐专辑功能
- 在帖子页面智能推荐相关专辑
- 支持三种显示位置选择
- 自定义推荐数量(1-10个)
- 响应式卡片布局
- 引导用户创建专辑
-
📢 公告功能
- 专辑列表页显示管理员公告
- 支持超链接和换行
- 最多200字限制
- 自动安全过滤
-
⚙️ 自定义按钮文字
- 可自定义"加入专辑"按钮文字
- 后台设置,实时生效
优化改进
- 🎨 移除"加入专辑"按钮的图标
- 🎨 优化推荐专辑卡片样式
- 🎨 简介超过25字自动截断
- 🐛 修复 Mithril 框架下的 HTML 渲染问题
Version 1.0.0 (2025-01-01)
- 🎉 初始版本发布
- ✨ 基础专辑管理功能
- ✨ 专辑关注功能
- ✨ 专辑广场
- ✨ 搜索和排序
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可证
MIT License
👨💻 作者
wszdb
🔗 相关链接
💬 支持
如果您在使用过程中遇到问题,可以:
⭐ Star History
如果这个扩展对您有帮助,欢迎 ⭐ Star 支持!
Versions
-
Version v1.2.
Likely works with Flarum v1.8.11.
Unlikely to work with Flarum v2.0.0-beta.4.
-
2 additional versions.
-
Extension created.