imarc/padstone

Craft CMS

安装: 418

依赖: 0

建议者: 0

安全: 0

星标: 21

关注者: 10

分支: 6

语言:Twig

类型:项目

5.0.1 2022-09-15 16:21 UTC

README

Padstone for Craft CMS

Padstone是由Imarc开发的一个Craft 4的起始包。它提供了一个简单的项目配置,以及示例条目和模板。

如果您想使用Padstone的旧版本(Craft 2或3),请查看craft2分支4.x

功能

  • 预构建的CMS部分,包括主页、博客、新闻和资源。(总共18个!)
  • 一套Imarc模板,供您替换或自定义。
  • 一个基于Neo的强大内容设计器字段,用于创建比简单富文本更复杂的页面。
  • Imarc精选的插件集合,我们推荐用于新项目。

入门指南

使用以下composer命令创建一个新的padstone项目

composer create-project imarc/padstone [folder]

使用ops(快速方法)

进入新项目文件夹,然后运行

ops padstone-install

这将运行以下所有步骤,包括提示您输入要添加到.env文件中的值。您可能希望将DB_SERVER保留为默认的mariadb,但您可以根据需要更改其他设置。

手动方法

  1. 将.env.example复制为.env,并更新其中的设置。特别是DB_DATABASE、DB_SERVER、DB_USER和DB_PASSWORD。

  2. 运行./craft setup/security-key以生成.env文件的安全密钥。

  3. 如果您想使用Padstone的SQL文件,请将padstone.sql导入到您的网站上。

  4. 默认的Padstone网站配置为将用户会话存储在数据库中。需要为新数据库添加phpsessions表。如果您导入padstone.sql文件,表将在导入过程中创建。作为替代方案,您可以运行craft控制台命令手动创建表。

    craft setup/php-session-table

然后前往/admin(除了您的域名外)运行安装程序。

登录

如果您使用ops方法或手动导入padstone.sql,用户名为admin,密码为padstone。请登录后更改密码。

前端构建

除了典型的craft文件外,您还会看到一个resources/文件夹。Padstone使用Laravel Mix将resources/文件夹中的JS和Sass文件编译到public/文件夹中

  • resources/assets/sass/main.scss编译为public/css/main.css
  • resources/assets/js/main.js编译为public/js/main.js

此外,Padstone还生成manifest.jsvendor.js文件,必须在包含您自己的JS文件之前按顺序包含。您可以在webpack.mix.js中自定义此行为。

监视/构建资源

在开发过程中,您可能希望监视您正在工作的文件,以便在每次保存后自动进行构建。

npm run watch

如果您想在开发环境中运行此相同的构建过程而不进行监视,可以运行以下命令

npm run dev

如果您要构建生产版本,运行

npm run prod

包含内容

部分

Padstone包含以下部分

  • 主页
  • 页面 包含 博客新闻资源团队联系方式 页面的入口类型
  • 共享部分 用于构建页面共享部分
  • 博客文章新闻文章作者
  • 团队活动资源
  • 警报
  • 错误页面404页面

插件

以下插件目前通过 composer 包含并安装,这也是Craft用于插件商店的方式

建议的额外插件

这些插件没有进入Padstone,但如果有特定需求,我们建议人们考虑这些插件

  • 指南 - 使用Craft添加文档。目前价格为39美元和每年19美元。
  • 地图 - 一种地图字段类型,用于选择位置,可与Google Maps和其他服务协同工作。
  • Sprout Forms - 一个表单构建器,可以在Craft中跟踪提交。

存在一个 _macros.twig 文件,提供以下宏

  • renderAllBlocksrenderBlockrenderColumn - 这些用于渲染内容设计师字段。
  • responsiveImage - 使用responsiveImage.twig片段嵌入图像的宏,具有适当的srcsets,用于与lazysizes一起工作。
  • pagination - 用于生成分页。
  • commaSeparate - 根据标题生成元素的逗号分隔列表。
  • columnsSlug - 用于生成适合部分的合适slug。
  • numberToWord - 用于将0到10之间的数字转换为英文单词。

部分

内容设计师 字段(contentDesigner)允许CMS用户直接使用以下部分

  • 设计部分 - 最常见的部分,允许您从以下部分中选择最多两列一起渲染
    • 文本 - 一个常规的富文本列。在文本列中,您还可以添加一个行动号召。
    • 行动号召 - 一个行动号召,通常设计成按钮样式。
    • 图像 - 一个图像。
    • 相关条目 - 一个相关条目。
    • 推荐信 - 一封推荐信。
    • 视频 - 一个视频。
    • 嵌入 - 一个嵌入。
  • 富文本部分 - 一个更传统的只包含富文本的部分,依赖于redactor进行样式设计或内容中的浮动图像。
  • 行动号召部分 - 一个全宽部分,包含行动号召。
  • 相关条目部分 - 一个相关条目部分,例如相关的博客文章或资源。
  • 推荐信部分 - 一个包含推荐信的部分。
  • 图标网格部分 - 一个图标网格,通常用于展示合作伙伴、品牌或技术标志。
  • 共享部分 - 允许您包括一个共享部分,这是一个在CMS中的独立类型条目,它本身包含内容设计师字段。这可以让您在共享部分中构建一个块,并将其包含到网站上的多个页面上。

许可证

Padstone在MIT许可证下发布。

贡献

设置一个具有贡献能力的padstone项目。

# clone project and enter directory
git clone git@github.com:imarc/padstone.git
cd padstone

# install composer deps
composer install

# create .env file. if you are using Ops, you can copy .env.example.ops
cp .env.example.server .env

# generate craft security key
php craft setup/security-key

# install boilerplate components
npx imarc/boilerplate-components
echo '@import "~bootstrap/scss/bootstrap";' >> resources/styles/main.scss"
echo 'import "bootstrap";' >> resources/js/main.js"

# import sql into db. If you are using Ops, the command is:
ops mariadb import padstone padstone.sql

# Manual step:
# set DB_DATABASE in your .env to 'padstone'

Imarc

© 2019-2022 Imarc