morningtrain/wp-blocks

一个用于加载支持 Blade 模板的 WordPress 块的包

v0.6.0 2023-09-11 09:23 UTC

This package is auto-updated.

Last update: 2024-09-11 12:10:41 UTC


README

一个用于轻松处理 WordPress 块的 Morningtrain 包。

📋 目录

[[TOC]]

简介

此工具是为了组织 WordPress Gutenberg 块而制作的!

此工具让您:

  • 加载目录中找到的所有块
  • 通过在块元数据中定义为 renderView 来渲染 Blade 视图
  • 通过将 *.php 文件放置在 block.json 文件旁边来加载 PHP 依赖项

入门

要开始使用,请按照以下 安装 部分中的说明安装包。

要使用此工具,请参阅 使用方法

安装

使用 composer 安装

composer require morningtrain/wp-blocks

依赖项

morningtrain/php-loader

PHP Loader 用于加载和初始化所有钩子

使用方法

加载块目录

要初始化包或从路径加载块,请使用 Blocks::setup

use Morningtrain\WP\Blocks\Blocks;
// Tell Blocks where the built/compiled files are located
Blocks::setup(__DIR__ . "/public/build/blocks");

// To add another directory
Blocks::registerBlockDirectory(__DIR__ . "/public/build/blocks");

使用视图

要通过 Blade 视图在服务器端渲染块,请设置自定义的 renderView 属性。

您还可以有自定义的 PHP 代码依赖项。通过声明 phpScript,所提供的脚本将与您的块注册一起加载。这在需要视图作曲家时特别有用。

注意自定义模式 URL!

{
    "$schema": "https://wp.cdn.mtra.in/default/schemas/block.json",
    "apiVersion": 3,
    "name": "foo/bar",
    "version": "0.1.0",
    "title": "Bar",
    "textdomain": "foo",
    "editorScript": "file:./index.js",
    "editorStyle": "file:./index.css",
    "style": "file:./style-index.css",
    "renderView": "my-view",
    "phpScript": "file:./script.php",
    "viewPhpScript": [
        "file:./view-script.php",
        "file:./view-script2.php"
    ],
    "editorPhpScript": "file:./editor-script.php"
}

视图将具有以下变量:$block$attributes$content$blockProps

示例

<div {!! $blockProps !!}>
    <h2>{{$attributes['title']}}</h2>
    <div>{!! $content !!}</div>
</div>

如果您想进行视图作曲,可以在您的块文件夹中创建一个 *.php 文件。只要它与 block.json 文件是兄弟关系,并且不命名为 *.asset.php,则它将自动加载。

缓存

如果您的环境是 production,则将生成包含所有块文件及其依赖项的缓存并使用它,这样服务器就不必在每次请求时都查找它们。

要清除此缓存,您可以使用 CLI 命令

wp wp-blocks deleteCacheFiles

Credits

测试

composer test

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件