artisandm/craft

此包已被废弃,不再维护。没有建议的替代包。

nystudio107 Craft 3 CMS 框架项目

安装: 20

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 89

语言:JavaScript

类型:项目


README

nystudio107

关于 nystudio107/craft

这是一个 Craft 3 CMS 项目的替代框架包,用于 Pixel & Tonic 的经典 craftcms/craft 包。

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

...以及其他一些东西。

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

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

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

使用nystudio107/craft

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

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

确保PATH是您的项目路径,包括您希望的项目名称,例如:

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

我们使用--no-install,这样就不会安装根项目的composer包。

设置本地开发

您需要安装Docker桌面以在本地开发中运行项目

  • cms/目录中设置一个基于提供的example.env.env文件
  • scripts/目录中设置一个基于提供的example.env.sh.env.sh文件
  • 在项目的根目录中,在终端中输入make dev以启动网站(第一次构建可能有些漫长)
  • 导航到https://:8000以使用网站;webpack-dev-serverhttps://:8080上运行

等待看到以下内容以指示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

...以及以下内容以指示webpack容器已就绪

webpack_1     | <i> devmode-fm (webpack 5.9.0) compiled successfully in 12097 ms
webpack_1     | <i> [webpack-dev-middleware] Child "devmode-fm": Compiled successfully.

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 - 启动监听在https://:8000/的本地开发服务器
  • make build - 通过webpack 5构建链构建静态资源
  • make clean - 关闭Docker容器,删除任何挂载的卷(包括数据库),然后从头开始重建容器
  • make update - 使项目更新到最新的Composer和NPM依赖项
  • make update-clean - 完全删除node_modules/vendor/,然后使项目更新到最新的Composer和NPM依赖项
  • 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 pulldb - 运行scripts/docker_pull_db.sh脚本来将远程数据库拉入数据库容器;必须首先设置scripts/.env.sh
  • make restoredb xxx - 运行scripts/docker_restore_db.sh脚本来将本地数据库备份恢复到数据库容器中;必须首先设置scripts/.env.sh

其他说明

要更新到最新的Composer包(受限于cms/composer.json的semvers)和最新的npm包(受限于docker-config/webpack-dev-devmode/package.json的semvers),请执行以下操作

make update

要从头开始,先删除buildchain/node_modules/cms/vendor/,然后更新到最新的Composer包(受限于cms/composer.json的semvers)和最新的npm包(受限于docker-config/webpack-dev-devmode/package.json的semvers),请执行以下操作

make update-clean

要使用VSCode中的Xdebug,请安装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

.....

Craft CMS

关于Craft CMS

Craft是一个灵活且可扩展的CMS,用于在网页和其他地方创建定制的数字体验。

它具有以下功能

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

更多关于Craft CMS的信息,请访问craftcms.com

技术规范

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

安装

有关安装Craft 3的帮助,请参阅以下文档页面

常用资源