虽然现在CMS已经不如以前那么火,但是为了便于快速开发,节省人员和时间成本,选择并使用一款CMS进行二次开发,也是一个不错的选择。目前行业各类型的CMS也是鱼目混珠,我们不可能去逐一学习到每一款优秀的CMS。本着以不变应万变的原则,一个好的学习方法还是很重要的。
如何快速掌握一款CMS,下面将以最近要学习的CraftCMS入手,边学习边总结,持续更新,仅供参考。
- 了解优势和特性
- 了解基本的操作使用
- 了解目录结构
- 了解设计理念
- 动手开发一个功能
一. 了解优势和特性
CraftCMS是一个内容管理系统,专为需要更多控制和更强大的CMS功能的发布商而设计。它是基于Yii框架的基于PHP的应用程序。(因为是公司要求的,暂时不多过多关注,后面再做补充)
Craft 和 WordPress 不同的是, 后者的“内容”更关注于 Blog, 而前者的“内容”则更加泛化(comes in all shapes and size)。Craft 关注于内容,而不是那些复杂的业务逻辑。
官网:https://craftcms.com/
github:https://github.com/craftcms/craft
二. 了解基本的操作使用
安装
- 准备工作
- PHP 7.0+
- MySQL 5.5+ with InnoDB
- At least 256MB of memory allocated to PHP
- At least 200MB of free disk space
- Composer 1.3.0 or later
- composer方式安装(支持归档文件和docker)
composer -V
composer create-project craftcms/craft /Users/nieyunfei/devspace/craft
- 终端安装配置
~/devspace/craft/craft setup
基本使用
- 后台操作
后台主要包含了常规CMS的一些内容,主要分以下几个部分:
- 概览(控制台)
- 实用程序(一些常规操作的快捷入口)
- 检测更新
- 系统信息(PHP和CMS系统信息)
- 清除缓存
- 数据库备份
- 文本查找替换
- 数据迁移
- 设置
- 系统设置(基本信息、多站点、路由、用户、邮件、插件管理)
- 内容配置 (字段、版块、资源、全局变量、分类、标签)
- 插件商店
三,了解目录结构
- config 配置文件目录
- modules 模块目录
- resource 自定义的文件目录
- storage 存储目录(日志、备份、缓存)
- template 模板目录
- vendor 第三方目录
- web 对外开发的目录(入口文件等)
在插件商店安装后,会在vendor目录生成一个插件包,具体路径可以参考composer.lock
四,了解设计理念
待补充,新版本下个月发布,真是快
五,动手开发一个功能
动手做一个CraftCMS的插件
准备
package名称–用于为插件命名您的Composer软件包,加上Craft-前缀,以帮助识别这是Craft插件。例如
acoustep/craft-easymde
命名空间–插件类将位于其中的根命名空间,例如
namespace Acoustep\CraftEasyMDE;
,使用可以识别您(开发人员)的信息插件句柄–可以在Craft生态系统中唯一标识您的插件的东西。插件句柄必须以字母开头,并且只能包含小写字母,数字和破折号。它们应该用kebab大小写。
插件名称-您的插件将在“控制面板”中调用的名称
设置基础文件结构
要创建插件,需要单独创建一个新目录,一种常见的方法是将它们存储在Craft项目旁边的〜/ dev /文件夹中。
~/dev/
├── my-project.test/
│ └── ...
└── my-plugin/
├── CHANGELOG.md
├── LICENSE.md
├── README.md
├── composer.json
└── src/
└── Plugin.php
插件目录的名称无关紧要,只需选择易于识别的内容即可。