Flarum 开发环境案例
Flarum 是通过 composer 来安装模块的,这让开发和其它的项目开发有所不同,就是要在本地建立仓库建立开发仓库。
环境设置
- 先下载
flarum/code
,然后下载要用到的扩展包
git clone https://github.com/flarum/flarum.git
cd flarum
# Set up a Composer path repository for Flarum packages
composer config repositories.0 path "packages/*"
git clone https://github.com/<username>/core.git packages/core
git clone https://github.com/<username>/tags.git packages/tags # etc
运行composer install
修改 compose.json 的 minimum-stability
从 beta
改为 dev
,如果是扩展安装或升级应当在控制面板中关闭开启一次,然后 php flarum cache:clear
如果修改前端,安装运行 npm
cd packages/core/js
npm install
npm run dev
设计实例
创建项目名称 campass/code
对应 flarum/code
。
cd /var/www/html/source
git clone https://github.com/flarum/core.git
cd core
git remote rename origin source-origin
git remote add origin http://example.com/campass/core.git
git checkout -b source
git checkout -b dev
git push -u origin --all
本地开发路径为:/var/www/html/source
,source 分支用于下拉最新的外部开发分支,dev 分支为内部开发分支,dev 分支合并 最新外部的 source 分支后更新到 update 分支,update分支 merge 到 master 分支。
graph TD;
dev --> update;
source --> update;
update --> master
# 当外部有更新时,就 pull 到 source 分支
git pull source-origin master:source
git checkout dev
git merge source
git push origin dev:update
基础扩展包 extend
flarum 依赖扩展包的安装
"flarum/approval": "^0.1.0",
"flarum/auth-github": "^0.1.0",
"flarum/bbcode": "^0.1.0",
"flarum/emoji": "^0.1.0",
"flarum/lang-english": "^0.1.0",
"flarum/flags": "^0.1.0",
"flarum/likes": "^0.1.0",
"flarum/lock": "^0.1.0",
"flarum/markdown": "^0.1.0",
"flarum/mentions": "^0.1.0",
"flarum/pusher": "^0.1.0",
"flarum/statistics": "^0.1.0",
"flarum/sticky": "^0.1.0",
"flarum/subscriptions": "^0.1.0",
"flarum/suspend": "^0.1.0",
"flarum/tags": "^0.1.0"
中文支持
论坛发布支持扩展的 https://discuss.flarum.org/t/languages
https://github.com/Csineneo/lang-simplified-chinese.git
更新完插件要要在控制面板中重启服务。
git clone https://github.com/Csineneo/lang-simplified-chinese.git
cd lang-simplified-chinese
git remote rename origin source-origin
git remote add origin http://example.com/campass/lang-simplified-chinese.git
git checkout -b source
git checkout -b dev
git push -u origin --all
图像支持
图像、视频等上传是非常重要的功能 https://discuss.flarum.org/d/4154
https://github.com/FriendsOfFlarum/upload.git
git clone https://github.com/Csineneo/lang-simplified-chinese.git
cd packages
git clone https://github.com/FriendsOfFlarum/upload.git
cd upload
git remote rename origin source-origin
git remote add origin http://example.com/campass/upload.git
git checkout -b source
git checkout -b dev
git push -u origin --all
邮箱注册
f*****@iicgo.net
smtp
smtp.exmail.qq.com
465
ssl
f*****@iicgo.net
n******