flyntwp/flynt-core

此包已被放弃,不再维护。未建议替换包。

Flynt 核心插件提供一个小型公共接口,结合几个 WordPress 钩子,以实现 Flynt 框架的主要原则。

安装量: 6,281

依赖项: 0

建议者: 0

安全: 0

星标: 12

关注者: 2

分支: 0

公开问题: 2

类型:wordpress-plugin

v1.0.0 2017-03-27 10:38 UTC

This package is auto-updated.

Last update: 2020-08-15 17:48:55 UTC


README

standard-readme compliant Build Status Code Quality Coverage Status

Flynt 框架的核心构建块。

Flynt 核心WordPress插件提供一个小型公共接口,结合几个WordPress钩子,以实现Flynt 框架的主要原则。

⚠️ 已弃用。此存储库不再处于积极开发状态。请使用新的 Flynt 存储库获取 Flynt 的最新版本。 ⚠️

目录

背景

此插件本质上是一个HTML生成器,具有两个关键步骤

  1. 给定最小配置,Flynt 核心插件创建一个如何构建网站的分层计划(即 构建计划)。
  2. 构建计划被解析并渲染成HTML。

传递给插件的所有配置代表一个单个组件。此配置还可以包含额外的、嵌套的组件配置,这些配置包含在 "区域" 内。

安装

通过 composer 安装,运行

composer require flyntwp/flynt-core

在WordPress后端激活插件,您就可以开始使用了。

使用

Hello World

要查看使用Flynt Core的最简单方法,请将以下代码添加到您的主题的functions.php

$componentManager = Flynt\ComponentManager::getInstance();
$componentManager->registerComponent('HelloWorld');

add_filter('Flynt/renderComponent?name=HelloWorld', function () {
  return 'Hello, world!';
});

这定义了一个新的组件('HelloWorld'),当渲染时,将输出文本 'Hello, world!'。

要渲染组件,请将以下代码添加到您的主题的index.php

Flynt\echoHtmlFromConfig([
  'name' => 'HelloWorld'
]);

初始化默认设置

我们建议初始化插件的默认设置。通过将以下行代码添加到您的主题的functions.php来实现此操作

Flynt\initDefaults();

这将

  • 实现组件结构。
  • 加载组件脚本。
  • 启用PHP文件渲染。

这还添加了以下钩子

// Set the config path to './config'.
add_filter('Flynt/configPath', ['Flynt\Defaults', 'setConfigPath'], 999, 2);

// Parse `.json` config files.
add_filter('Flynt/configFileLoader', ['Flynt\Defaults', 'loadConfigFile'], 999, 3);

// Set the component path to `./Components`.
add_filter('Flynt/componentPath', ['Flynt\Defaults', 'setComponentPath'], 999, 2);

// Load ./Components/{$componentName}/functions.php from every registered component.
add_action('Flynt/registerComponent', ['Flynt\Defaults', 'loadFunctionsFile']);

// Render `./Components/{$componentName}/index.php` and make view helper functions `$data` and `$area` available (see explanation below).
add_filter('Flynt/renderComponent', ['Flynt\Defaults', 'renderComponent'], 999, 4);

通过在上面的 'Flynt/renderComponent' 过滤器中添加,您现在可以在模板文件中使用以下辅助函数

  • $data用于在视图模板中访问组件的数据。
  • $area用于将区域的组件HTML包含到组件模板本身中。

您可以在此处阅读完整的文档。

维护者

此项目由bleech维护。

负责此存储库的主要人员是

贡献

要贡献力量,请使用GitHub 问题跟踪。接受拉取请求。请花一点时间阅读贡献指南行为准则

如果编辑README,请遵循标准README规范

许可证

MIT © bleech