基于 Laravel 5 构建的、支持模块化和多语言的 CMS —— AsgardCMS
1、简介
AsgardCMS 是基于 Laravel 5 构建的、支持模块化和多语言的CMS。
官网:https://asgardcms.com/
Github:https://github.com/AsgardCms
基于 AsgardCMS 构建的站点:https://asgardcms.com/gallery
百牛信息技术bainiu.ltd整理发布于博客园
2、功能特性
AsgardCMS以模块方式提供功能特性,系统自带的模块包括:
- 核心模块:安装/升级、配置、侧边栏管理、权限控制、前端资源管理器、辅助函数、表单
- 后台模块:小部件
- 媒体模块:配置、缩略图、事件、链接媒体文件到实体
- 菜单模块:管理、显示菜单
- 设置模块
- 主题
- 用户模块
- 标签模块
- 工作台模块:创建模块、生成实体、创建主题等
此外官方还为我们提供了博客模块、区块模块以及通知模块。
3、系统要求
目前AsgardCMS分稳定版本(1.0)和开发版本(2.0),稳定版本基于Laravel 5.1,开发版本基于Laravel 5.3。
开发版本对系统要求如下:
- PHP 5.6+
- PDO 扩展
- cURL 扩展
- OpenSSL 扩展
- Mbstring 扩展
- Tokenizer 扩展
- Mcrypt 扩展
- GD 扩展
- MySQL 5.5
- 以下缓存之一:Memcached、Redis、APC(默认是数组)
文档版本和开发版本对 PHP 扩展要求一致,只不过PHP版本只需要是 5.5.9+ 即可。
4、安装
下面我们以开发版本为例,讲述 AsgardCMS 的安装。
首先我们需要通过 Composer 来创建项目:
composer create-project asgardcms/platform=2.0.x-dev your-project-name
如果安装稳定版本的话,对应安装命令如下:
composer create-project asgardcms/platform your-project-name
然后创建相应的数据库。
接下来,在项目根目录运行安装命令 php artisan asgard:install
进行安装,安装命令会做以下这些事:
- 设置数据库信息
- 运行迁移
- 填充数据
- 发布前端资源
- 创建一个后台账户
安装完成后,就可以通过 /auth/login
进入登录页面并使用上面安装过程中填写的邮箱和密码进行登录。登录成功后就可以访问后台面板 /backend
。
5、用到的第三方扩展包
AsgardCMS 受益于开源社区,在构建过程中我们使用到了如下扩展包:
- Laravel主题扩展包:floatingpointsoftware/stylist
- Laravel多模块管理:nwidart/laravel-modules
- Laravel框架HTML及表单构建器:laravelcollective/html
- 轻松实现视图展示:laracasts/presenter
- Laravel多语言扩展包:dimsav/laravel-translatable
- Laravel本地化实现:mcamara/laravel-localization
- Laravel侧边栏构建器:maatwebsite/laravel-sidebar
- PHP图片操作:intervention/image
- Laravel 5 菜单扩展包:pingpong-labs/menus
- 扩展Eloquent\Collection处理无限嵌套数据项:typicms/nestablecollection
- Laravel包开发测试助手:orchestra/testbench
- Laravel调试器:barryvdh/laravel-debugbar
请在使用的时候注意标明。
基于 Laravel 5 构建的、支持模块化和多语言的 CMS —— AsgardCMS的更多相关文章
- 基于laravel框架构建最小内容管理系统
校园失物招领平台开发 --基于laravel框架构建最小内容管理系统 摘要 针对目前大学校园人口密度大.人群活动频繁.师生学习生活等物品容易遗失的基本现状,在分析传统失物招领过程中的工作效率低下. ...
- 基于开源软件构建高性能集群NAS系统,包括负载均衡(刘爱贵)
大数据时代的到来已经不可阻挡,面对数据的爆炸式增长,尤其是半结构化数据和非结构化数据,NoSQL存储系统和分布式文件系统成为了技术浪潮,得到了长足的发展.非结构化数据目前呈现更加快速的增长趋势,IDC ...
- 基于Dubbo框架构建分布式服务(一)
Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配 ...
- Gravitational Teleport 是一个先进的 SSH 服务器,基于 Golang SSH 构建,完全兼容 OpenSSH
Gravitational Teleport 是一个先进的 SSH 服务器,可通过 SSH 或者 HTTPS 远程访问 Linux 服务器.其目的是为了替代 sshd.Teleport 可以轻松让团队 ...
- 基于Dubbo框架构建分布式服务
Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配 ...
- 基于 Apache Mahout 构建社会化推荐引擎
基于 Apache Mahout 构建社会化推荐引擎 http://www.ibm.com/developerworks/cn/views/java/libraryview.jsp 推荐引擎利用特殊的 ...
- 基于 Laravel、Vue.js开发的全新社交系统----ThinkSNS+
什么是ThinkSNS+ ThinkSNS(简称TS)始于2008年,一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案,目前最新版本为ThinkSNS+.新的产品名 ...
- 基于 Laravel 开发 ThinkSNS+ 中前端的抉择(webpack/Vue)踩坑日记【ThinkSNS+研发日记系列】
在上一篇文章< ThinkSNS+基于Laravel master分支,从1到 0,再到0.1>,简单的介绍了 社群系统ThinkSNS+ ,这里分享在开发过程中,前端选择的心理活动. L ...
- ThinkSNS+ 基于 Laravel master 分支,从 1 到 0,再到 0.1
什么是 ThinkSNS+ 09 年,由北京的团队开发了 ThinkSNS 涉足社交开源行业.这么多年累计不少客户.2014-2016,两年都在维护和开发之前基于 TP 的 ThinkSNS , 慢慢 ...
随机推荐
- Linux内核配置选项
http://blog.csdn.net/wdsfup/article/details/52302142 http://www.manew.com/blog-166674-12962.html Gen ...
- 【spring boot】mybatis启动报错:Consider defining a bean of type 'com.newhope.interview.dao.UserMapper' in your configuration. 【Mapper类不能被找到】@Mapper 和@MapperScan注解的区别
启动报错: 2018-05-16 17:22:58.161 ERROR 4080 --- Disconnected from the target VM, address: '127.0.0.1:50 ...
- python远程访问hive
#!/usr/bin/pythonimport syssys.path.append('/home/zhoujie/Downloads/hive-0.7.0-cdh3u0/lib/py')from h ...
- Java线程池 ExecutorService
一.ExecutorService介绍 ExecutorService是Java中对线程池定义的一个接口,它java.util.concurrent包中,在这个接口中定义了和后台任务执行相关的方法: ...
- HDU 3820 Golden Eggs( 最小割 奇特建图)经典
Golden Eggs Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- iOS常用网络库收集
一 ASIHttpRequest二 AFNetworking 三 AFDownloadRequestOperationA progressive download operation for AFNe ...
- 第04章-VTK基础(2)
[译者:这个系列教程是以Kitware公司出版的<VTK User's Guide -11th edition>一书作的中文翻译(出版时间2010年,ISBN: 978-1-930934- ...
- 李洪强iOS开发之- 点击屏幕遮挡键盘
李洪强iOS开发之- 点击屏幕遮挡键盘 实现的效果: 01 - 给当前的view添加点击事件,使点击屏幕的时候,让键盘退出 /** * 点击屏幕 隐藏键盘 * * @param tap */-(vo ...
- python实现斐波那契查找
通过在网上找教程解释和看书,总结出一套比较简单易懂的代码实现. 斐波那契查找和二分查找一样,针对的是有序序列,在此前提下: # 先创建一个Fibonacci函数 fib = lambda n: n i ...
- javascript常用事件及方法
1.获取鼠标坐标,考虑滚动条拖动 var e = event || window.event; var scrollX = document.documentElement.scrollLeft || ...