log1x/sage-eject-blocks

此包已被弃用且不再维护。未建议替代包。

将 Sage 10 编辑器脚本推出到可选的懒加载插件中。

资助包维护!
Log1x

安装: 53

依赖者: 0

建议者: 0

安全: 0

星星: 11

观察者: 2

分支: 0

类型:package

v1.0.3 2019-12-06 17:17 UTC

This package is auto-updated.

Last update: 2021-03-06 20:06:07 UTC


README

Latest Stable Version Build Status Total Downloads

那么这里有什么呢?

此包是对解决 Gutenberg 在主题开发工作流程中创建的关注点分离问题的策略进行的4-5小时半途而废的尝试/概念验证。

Preview

当前问题

Gutenberg 非常出色,但它破坏了主题工作流程,因为需要在主题 + Gutenberg 包/插件之间分离关注点。

如果您将区块代码编入您的主题,并且主题发生变化,您的区块就会消失,您可能会丢失内容。哎呀。

建议的解决方案

此方案试图通过允许您将区块脚本自动推出到插件中,同时优先从主题加载它们(如果存在),来解决这个问题。样式仍然来自您的主题,并在推出时不会包括在内。主题消失?插件接管。

主题保持主题,生成的插件功能……如果有的话。目前生成的插件中不依赖于 Sage 10 或 Acorn,但显然如果您想使用它,则需要它们。

避免冲突

目前使用 wp_script_is() 进行冲突避免——但我非常愿意接受其他解决方案/想法。

这允许我们在主题内部100%维护我们的工作流程,作为自由职业开发者、代理商等——承担起自己正确行事的责任,并将脚本推出到插件中,无论是手动、通过持续集成等,这样将来,如果网站要更改——他们不会遇到麻烦,您也不必改变过去XY年来的做事方式。

嗯……好吗?

概念和 CLI 流程可能有点粗糙,但我保证,如果这是一个会证明是有益的想法,并且人们真的想要它,我会让它变得更漂亮、感觉更好。

也许这不是看待这个问题的方式?也许这是无用的?我不知道。这就是为什么我把它放出来的原因。你告诉我。

不,真的。如果这是无用的,请立即停止我的痛苦。

TODO(可能?)

  • 使 CLI 更漂亮。
  • 允许更详细的输出。
  • 允许更编程化(无需输入)。
  • 允许预先配置(config/whatever.php)。
  • 确保 CI 流程是充分的(见3/4)。
  • 讨论 wp_script_is() 和替代方案。
  • 讨论为了兼容性目的应该和不应该配置的内容。
  • 确保插件加载器以最理想的方式编写(并按预期工作)。
  • 某种类型的 row_action 信号,指示插件是否激活(脚本已加载)或延迟加载。
  • 请检查代码。

需求

安装

通过 Composer 安装

$ composer require log1x/sage-eject-blocks

使用

$ wp acorn eject:blocks

错误报告

是的。

贡献

是的。

许可协议

Sage Eject Blocks 在 MIT 许可协议 下提供。