analogde/ce-gen

startpilot 的内容元素生成器

安装次数: 14,003

依赖项: 0

建议者: 0

安全性: 0

星标: 5

关注者: 9

分支: 4

开放性问题: 0

语言:Shell

类型:工具

1.6.1 2021-02-02 07:16 UTC

This package is auto-updated.

Last update: 2024-09-05 03:19:34 UTC


README

本文档是为 ce-gen 版本 1.4.0 编写的。ce-gen 仅与 startpilot 提供器扩展结合使用

它做什么

ce-gen 是一个 CLI 工具,用于生成自定义内容元素所需的所有文件。其名称来源于 content element generator。这包括

  • fluidtemplates
  • 后端预览模板
  • scss 文件
  • tsconfig 文件
  • typoscript 文件

为了自动生成和包含这些文件,我们使用 startpilot 提供器扩展的结构。

ce-gen 允许您生成三种不同类型的自定义内容元素。这些类型如下定义

  • 默认项目
  • 不可变项
  • MM 项

每个元素都带有可立即在后台使用的已准备好输出的前端输出。但有一个注意事项,我们将在下面的部分中说明。

什么是默认项目?

默认项目可能是最常见且最直接的内容元素。默认情况下(这就是注意事项),它只包含一个配置的(标题)字段。ce-gen 提供了您需要检查的所有内容,以确保您有一个可以构建自定义内容元素的基础。

什么是不可变项?

Irre 是 Inline-Relational-Record-Editing 的缩写。请参阅关于此主题的 官方文档。不可变项是一种包含任意数量的预定义其他元素的内容元素。想象一下手风琴,其中多个结构相同元素被分组在一起。记住那个注意事项吗?这些包装的结构相同的元素也只包含一个标题字段。

什么是 MM 项?

MM 项利用两个表之间的双向绑定。其中一个表包含记录列表,另一个表能够显示任意数量的记录,组合和顺序。这些项的常见用例可能如下所示

您需要在客户的网站上显示联系人信息。客户需要这些联系人在某些页面上显示,但不是所有页面上都显示。还有一个页面,所有人员都列在一个列表中。每个人还有一个自己的个人资料页面,显示有关他们的信息。

在这种情况下,记录将是联系人。使用 MM 项,您可以创建一个包含在不同视图中显示的所有数据的记录。如何显示该记录 - 布局和哪些数据 - 完全由包含这些记录的容器决定。与可以管理三种不同布局的三个不同默认项相比,优势在于能够编辑单个记录并影响该记录显示的所有位置。在 MM 关系项中,您还可以从包装容器跳转到其子记录并直接编辑它们。

系统要求

  • startpilot 提供器扩展
  • 您的 CLI 上必须可用 PHP 7.2
  • composer
  • gettext

如果您尚未使用startpilot设置提供者扩展,请参阅startpilot文档。有许多关于如何安装PHP 7.2、composer或gettext的详细文档。请随意使用最适合您的方法。您可以通过在命令行中运行以下命令来检查这些要求:

php -v 应该输出 7.2.*(或更高版本)

PHP 7.2.1 (cli) (built: Jan 15 2018 12:20:50) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies

composer -v 应该输出 1.6.*

Composer版本 1.6.2 2018-01-05 15:28:41

gettext -v 应该输出 0.19.*

gettext(GNU gettext-runtime)0.19.6

用法

始终从项目根目录(取决于您的composer.json bin目录)运行脚本。

如果您尚未在composer.json中设置bin目录(默认)

使用:sh vendor/bin/ce-gen.sh

如果您的composer.json中的配置条目包含以下内容

  "config": {
    "bin-dir": "."
  }

您可以在命令行中输入以下命令来执行ce-gen

sh ce-gen.sh

!! 不要进入vendor/bin/目录并运行它!!

在您第一次输入命令后,命令行将通知您.t3.cegen.yaml未找到,并在您的项目根目录中创建缺失的文件。如果您打开它,它应该看起来像这样

extension:
  name: startpilot
  path: public/typo3conf/ext/startpilot

您必须将name属性替换为您为startpilot提供者扩展提供的名称,并检查您的扩展目录的路径是否正确。如果您不介意将其名称更改,您可以跳过此步骤。

如果您再次执行ce-gen.sh,您将收到提示选择您想要创建的内容元素类型(如果您对此感到陌生,您可以在上面的“它做什么?”中查找)。接下来是显示的某些规范,以及后端以及TYPO3需要内部引用的cType。

一旦您被询问是否要重新开始,您就知道一切顺利,并且您已经准备好开始添加您需要的任何新内容元素。

如果您在开始时版本控制是干净的,那么它将不再干净。应该添加了由ce-gen生成的文件,以及一个更改.gitignore的文件,它将.t3cegen.yaml添加到其中。