我正在构建一个简单的调色板插件,它将覆盖gutenburg的颜色设置。
通常,可以将颜色添加到add_theme_support( 'editor-color-palette' );
中的数组中,如下所示:
add_theme_support(
'editor-color-palette',
[
[
'name' => esc_html__( 'Brown', 'udemy-plugin' ),
'slug' => 'brown',
'color' => '#3a3335',
],
[
'name' => esc_html__( 'Orange', 'udemy-plugin' ),
'slug' => 'orange',
'color' => '#f0544f',
],
[
'name' => esc_html__( 'Light Green', 'udemy-plugin' ),
'slug' => 'light-green',
'color' => '#c6d8d3',
],
]
);
但是,我想知道是否有可能将数组部分链接到一个文件?如下所示:
add_theme_support( 'editor-color-palette', $link-to-array );
如果可能,我如何链接插件中的数组文件?到目前为止,我的插件文件夹是这样设置的:
-Plugin Folder
-plugin.php (where my code is in)
发布于 2021-07-24 08:55:38
在CSS5.8中,theme.json被引入作为add_theme_support()
的替代方案,用于更好地管理Gutenberg块的自定义WordPress样式。根据您的示例代码,要在编辑器中为古腾堡块定义和应用自定义颜色,custom properties and presets in theme.json将非常适合。
例如:json:修改后的调色板只有颜色才是‘--palette’所需要的
[
{
"name": "Brown",
"slug": "brown",
"color": "#3a3335"
},
{
"name": "Orange",
"slug": "orange",
"color": "#f0544f"
},
{
"name": "Light Green",
"slug": "light-green",
"color": "#ffffff"
}
]
关于创建基于块的主题,WordPress文档还提供了一个操作指南,这可能会有所帮助:https://developer.wordpress.org/block-editor/how-to-guides/themes/create-block-theme/
由于WordPress和Gutenberg块仍在积极开发/更新中,请始终查看官方文档以获取最新的语法和最新的示例。
更新这里是如何加载和解码theme.json
function wpdc_gutenberg_color_settings() {
...
$dir = plugin_dir_path( __FILE__ );
$theme_colors = json_decode(
file_get_contents( $dir . "theme.json" ), // Returns contents of file as string
true // Decodes the JSON string into an associative array
);
add_theme_support('editor-color-palette', $theme_colors );
}
https://stackoverflow.com/questions/68386308
复制