nystudio107 Craft 3 CMS 框架项目

资助包维护!
khalwat

安装次数: 3 471

依赖者: 0

建议者: 0

安全性: 0

星标: 289

关注者: 20

分支: 84

语言:Twig

类型:项目


README

nystudio107

关于 nystudio107/craft

这是一个为 Craft 3 CMS 项目提供的替代框架包,与 Pixel & Tonic 的官方 craftcms/craft 包不同。

Vite 构建链

该项目使用 Vite.js 作为构建系统,如 Vite.js Next Generation Frontend Tooling + Craft CMS 中所述,而不是通常的 webpack 构建。

Vite 是 快速的

项目

该项目基于 Craft CMS,使用独特的 templates/_boilerplate 系统进行网页/AJAX/AMP 页面的开发,并实现了一系列技术和技巧。

...以及可能还有其他一些东西。

以下Craft CMS插件在此网站上使用

  • FastCGI缓存失效 - 当条目被修改时使FastCGI缓存失效
  • ImageOptimize - 用于网站上使用的优化图像和 srcset
  • Minify - 用于压缩HTML和内联JS/CSS
  • Retour - 用于设置404重定向
  • SEOmatic - 用于处理站点SEO
  • Vite - 用于以现代方式加载Vite生成的 manifest.json 资源
  • Typogrify - 用于智能引号和其他排版连字符
  • Webperf - 用于监控网页性能

您可以在 设置新的Craft 3 CMS项目 文章中了解更多信息。

使用 nystudio107/craft

此项目包的工作方式与Pixel & Tonic的 craftcms/craft 包完全相同;您首先创建并安装项目来创建新项目

composer create-project nystudio107/craft PATH --no-install

确保 PATH 是您的项目路径,包括您想要的项目名称,例如

composer create-project nystudio107/craft craft3 --no-install

我们使用 --no-install 以确保不安装根项目的composer包。

设置本地开发

您需要在您的平台上安装 Docker桌面 以在本地开发中运行devMode

确保没有其他可能产生端口冲突的本地开发环境正在运行,然后

  • 在项目的根目录(第一个构建可能会有些长)中的终端中输入 make dev 来启动网站
  • 导航到 http://localhost:8000 以使用网站;vite-dev-serverhttp://localhost:3000 上运行

等待直到您看到以下内容以指示PHP容器已准备好

php_1         | Craft is installed.
php_1         | Applying changes from your project config files ... done
php_1         | [01-Dec-2020 18:38:46] NOTICE: fpm is running, pid 22
php_1         | [01-Dec-2020 18:38:46] NOTICE: ready to handle connections

...并看到以下内容以指示Vite容器已准备好

vite_1        |   vite v2.3.2 dev server running at:
vite_1        |
vite_1        |   > Local:    http://localhost:3000/
vite_1        |   > Network:  http://172.22.0.5:3000/
vite_1        |
vite_1        |   ready in 1573ms.

CP登录凭证最初设置如下

登录: andrew@nystudio107.com
密码: letmein

显然,根据需要将其更改为您喜欢的任何内容。

通过输入make build来构建关键的CSS、字体和其他生产资源。它们将出现在cms/web/dist/目录下(只需双击report-legacy.htmlreport-modern.html文件来查看它们)。

注意:没有授权和凭证(这些都是私有的),make pulldb将不会工作(它只是运行scripts/docker_pull_db.sh)。这里提供它是为了教学目的。

Makefile项目命令

本项目使用Docker将运行所需的devops封装在项目周围。

为了使使用它更简单,我们正在使用Makefile和内置的make工具来创建本地别名。您可以从项目目录的终端中运行以下命令

  • make dev - 启动监听在http://localhost:8000/的本地开发服务器
  • make build - 通过Vite构建链构建静态资源
  • make clean - 删除cms/composer.lock和整个cms/vendor/目录以及buildchain/package-lock.json和整个buildchain/node_modules/目录
  • make composer xxx - 运行传入的composer命令,例如make composer install
  • make craft xxx - 运行传入的craft 控制台命令,例如在PHP容器中运行make craft project-config/apply
  • make npm xxx - 运行传入的npm命令,例如make npm install
  • make nuke - 通过运行上面的make clean从头开始重新启动项目,然后关闭Docker容器,删除任何挂载的卷(包括数据库),然后从头开始重新构建容器
  • make pulldb - 运行scripts/docker_pull_db.sh脚本来将远程数据库拉入数据库容器;必须首先设置scripts/.env.sh
  • make restoredb xxx - 运行scripts/docker_restore_db.sh脚本来将本地数据库转储恢复到数据库容器;必须首先设置scripts/.env.sh
  • make ssh - 在PHP容器中打开项目的Unix shell

提示:如果您尝试运行类似于make craft project-config/apply --force的命令,您将看到一个错误,因为shell认为--force标志应该应用于make命令。要绕过这个问题,请使用--(双横线)来禁用进一步的选项处理,如下所示:make -- craft project-config/apply --force

其他注意事项

要使用Xdebug与VSCode一起使用,请安装PHP调试扩展,并在您的.vscode/launch.json中使用以下配置

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003,
            "log": true,
            "externalConsole": false,
            "pathMappings": {
                "/var/www/project/cms": "${workspaceRoot}/cms"
            },
            "ignore": ["**/vendor/**/*.php"]
        }
    ]
}

以下是来自Pixel & Tonic的craftcms/craft的完整、未经修改的README.md

路线图

  • 更新到Tailwind CSS ^3.0.0

.....

Craft CMS

关于Craft CMS

Craft是一个灵活可扩展的CMS,用于在网页和互联网上创建定制的数字体验。

它具有以下特点

  • 直观的控制面板,用于管理任务和内容创建。
  • 对内容建模和前端开发的新方法。
  • 内置的插件商店,拥有数百个免费和商业插件
  • 用于模块和插件开发的强大框架。

更多信息请访问craftcms.com

技术规格

Craft是用PHP(7+)编写的,并基于Yii 2框架构建的。它可以连接到MySQL(5.5+)和PostgreSQL(9.5+)来存储内容。

安装

请参阅以下文档页面以获取Craft 3安装的帮助

常用资源