vunamhung/gutenberg-ramp

Gutenberg Ramp 是一款插件,用于管理编辑后环境中 Gutenberg 的状态。

1.2.0 2020-02-24 06:23 UTC

This package is auto-updated.

Last update: 2024-09-24 16:28:26 UTC


README

概述

Gutenberg Ramp 是一款插件,用于管理编辑后环境中 Gutenberg 的状态。根据主题代码中指定的标准,在编辑帖子时加载或卸载 Gutenberg。它对 Gutenberg 是否从核心或通过插件加载保持中立。

工作原理

Gutenberg Ramp 假设以下状态之一

  • WordPress 4.9 和 Gutenberg 插件(已激活或未激活)
  • WordPress 5.0 和回退编辑器

Gutenberg Ramp 在 WordPress 加载序列早期(plugins_loaded)就做出决定,是否采取行动。如果以下条件成立,它将采取行动:

  • 帖子编辑或新帖子屏幕将要加载,并且
  • 根据其用户提供的标准,Gutenberg 应该加载当前帖子且不会卸载,或者Gutenberg不应该加载当前帖子且会卸载。

加载标准可以通过代码(在主题或插件中)或通过用户界面提供。可以指示Gutenberg始终加载、永不加载,或仅加载特定帖子_id或帖子类型。

指定加载标准

标准存储在选项中,并在 plugins_loaded 之后的任何时间调用函数指定,通常在主题代码或 init 等钩子中。

加载行为由 gutenberg_ramp_load_gutenberg() 函数控制。不提供任何可选参数调用此函数会使Gutenberg在所有帖子编辑屏幕上加载。可以传递一个包含标准的可选关联数组。可能的键和值是

  • load(整型):0|1:永不或始终加载Gutenberg
  • post_ids(帖子_id数组):为指定的帖子_id加载Gutenberg
  • post_types(帖子类型数组):为指定的帖子类型加载Gutenberg。

代码示例

为所有帖子加载Gutenberg

if ( function_exists( 'gutenberg_ramp_load_gutenberg' ) ) {
	gutenberg_ramp_load_gutenberg();
}

永不加载Gutenberg

gutenberg_ramp_load_gutenberg( false );

// Alternatively, you can use the `load` key to always disable Gutenberg:
gutenberg_ramp_load_gutenberg( [ 'load' => 0 ] );

只为ID为12、13和122的帖子加载Gutenberg

gutenberg_ramp_load_gutenberg( [ 'post_ids' => [ 12, 13, 122 ] ] );

post_id: 12和所有类型为testscratch的帖子加载Gutenberg

gutenberg_ramp_load_gutenberg(
	[
		'post_types' => [ 'test', 'scratch' ],
		'post_ids'   => [ 12 ],
	]
);

用户界面

Gutenberg Ramp 在“设置”->“写作”菜单中添加了一个部分,允许通过帖子类型控制Gutenberg的加载。这可以用来代替在代码中指定标准。

常见问题解答

为什么在“设置”->“写作”中禁用帖子类型(灰色)?

如果您看到灰色,这意味着 gutenberg_ramp_load_gutenberg() 函数已经在您的主题 functions.php 中。如果您想使用 wp-admin UI,请从 functions.php 文件中删除冲突的函数。

为什么某些帖子类型没有在设置屏幕上显示?

不兼容 Gutenberg 的帖子类型将不会显示。如果您认为您发现了错误的否定(在取消激活 Ramp 插件时,该帖子类型的帖子确实与 Gutenberg 一起工作),请在此处报告问题:GitHub

我可以为此插件做出贡献吗?

绝对可以!请在此处创建问题并在 GitHub 上发起拉取请求。