外部项目模板

您是否正在寻找共享项目配置的方法?可以创建位于npm上或本地目录中的外部项目模板。这些npm包可以提供自定义.胡子替换WordPress插件或/和块工具中包含的默认文件的文件。也可以覆盖脚手架过程中使用的默认配置值。

项目模板配置

提供主文件(索引.js默认情况下)是必需的。有几个选项允许自定义脚手架过程。

插件模板路径

此可选字段允许覆盖与WordPress插件外壳。路径指向一个位置,该位置的模板文件以.胡子扩展名(也支持嵌套文件夹)。如果未设置,该工具将使用自己的模板集。

例子:

const{join}=require(“路径”);模块导出={插件模板路径:join(__dirname,'plugin-templates'),};

块模板路径

此可选字段允许覆盖与单个块。路径指向模板文件以结尾的位置.胡子扩展名(也支持嵌套文件夹)。如果未设置,该工具将使用自己的模板集。

例子:

const{join}=require(“路径”);模块导出={blockTemplatesPath:连接(__dirname,'block-templates'),};

资产路径

当您的模板构建一个WordPress插件时,此设置非常有用,该插件使用图像或字体等静态资产,不应进行处理。它提供指向资产所在位置的路径。它们将被复制到资产生成的插件中的子文件夹。

例子:

const{join}=require(“路径”);模块导出={assetsPath:join(__dirname,'plugin-assets'),};

默认值

可以使用默认值字段。

例子:

模块导出={默认值:{slug:'my-fantastic-block',title:“我的梦幻街区”,dashicon:'棕榈树',版本:“1.2.3”,},};

以下可配置变量用于模板文件。当用户不提供数据时,模板作者可以更改默认值。

项目:

  • wpScripts(wpScript)(默认值:真的)–实现与@wordpress/脚本包并将通用脚本添加到package.json包.
  • wpEnv公司(默认值:)–支持与@文字新闻/env包并添加环境价值脚本到package.json包.
  • 自定义脚本(默认值:{})–要添加到的自定义脚本列表package.json包。它还允许覆盖默认脚本。
  • npm依赖项(默认值:[])–要在项目中安装的远程npm包的列表npm安装什么时候wpScripts(wpScript)已启用。
  • npmDev依赖项(默认值:[])–要在项目中安装的远程npm包的列表npm安装--保存-dev什么时候wpScripts(wpScript)已启用。
  • 自定义包JSON(无默认值)–允许为生成的package.json文件定义其他属性。

插件标题字段(了解更多信息):

  • 插件URI(无默认值)–插件的主页。
  • 版本(默认值:'0.1.0')–插件的当前版本号。
  • 作者(默认值:“WordPress贡献者”)–插件作者的姓名。
  • 许可证(默认值:“GPL-2.0阶激光”)–插件许可证的简称。
  • 许可URI(默认值:'https://www.gnu.org/licenses/gpl-2.0.html')–许可证全文的链接。
  • 域路径(无默认值)–翻译的自定义域路径(更多信息).
  • 更新URI:(无默认值)–插件的自定义更新URI(相关开发说明).

块元数据(了解更多信息):

  • 文件夹名称(默认值:.)–位置块.json使用块模板路径设置。
  • $架构(默认值:`https://schemas.wp.org/trunk/block.json`)–用于块验证的模式URL。
  • api版本(默认值:2)–块API版本(相关开发说明).
  • 段塞(无默认值)–块名称中用于识别的块段塞。
  • 命名空间(默认值:'创建块')–块名称的内部命名空间。
  • 标题(无默认值)–块的显示标题。
  • 描述(无默认值)–对块的简短描述。
  • 仪表图标(无默认值)–图标属性,使识别块更容易(可用值).
  • 类别(默认值:“小部件”)–块按类别分组,以帮助用户浏览和发现它们。核心提供的类别包括文本,媒体,设计,小部件,主题、和嵌入.
  • 属性(无默认值)–块属性(更多详细信息).
  • 支架(无默认值)–可选块扩展支持功能(更多详细信息.
  • 编辑器脚本(默认值:'文件:/索引.js')–编辑器脚本定义。
  • 编辑器样式(默认值:'文件:/索引.css)–编辑器样式定义。
  • 风格(默认值:'文件:/style-index.css的)–前端和编辑器样式定义。
  • 提供(无默认值)–在前端呈现之前在服务器上呈现块类型时使用的PHP文件的路径。
  • 自定义块JSON(无默认值)–允许为生成的block.json文件定义其他属性。
  • 变压器(默认值:(视图)=>视图)–一个函数,用于接收create-block工具生成的所有变量并返回值对象。此函数提供修改现有值和添加新变量的功能。

变压器示例

此示例将生成的值添加到slug变量。

变压器:(视图)=>{const十六进制=getRandomHexCode();返回{…视图,slug:`${view.slug}-${hex}`,};},

此示例创建了一个新的自定义变量,可以在关联的胡子模板中用作{{customVariable}}(自定义变量)

变压器:(视图)=>{返回{…视图,customVariable:`自定义值`,};},

变体

变量用于为模板创建变量。变量可以覆盖任何默认值通过提供他们自己的。

模块导出={默认值:{slug:'my-fantastic-block',title:“我的梦幻街区”,dashicon:'棕榈树',版本:“1.2.3”,},变体:{主:{},次要:{title:'我的梦幻方块-次要变体',},},};

变量使用--变体标志,即--变量次级.

如果未提供变量,则在定义任何变量时使用第一个变量。

Mustache变量是为变量创建的,这些变量可用于有条件地输出文件中的内容。格式为{{isVARIANT_NAMEVariant}}.

{{#isPrimaryVariant}}只有在传递了“--variant primary”时,才会呈现此内容。{{/isPrimaryVariant}}{{#isSecondaryVariant}}只有传递了“--variant secondary”,才会呈现此内容。{{/isSecondaryVariant}}