我正在开发一个WordPress主题,在该主题中,我将向自定义程序的“颜色”部分添加一个颜色控件,以便用户可以自定义页脚的背景颜色。
我向自定义程序添加了一个功能正常的颜色选择器,但我无法让颜色选择器显示“默认”颜色和按钮。
我在与颜色控件关联的自定义设置中为“default”参数指定了一个十六进制颜色值,假设这是该控件的默认颜色,但它就是不起作用。
我的颜色选择器显示的不是“默认”按钮,而是一个“清除”按钮,用于清除颜色输入,但不会将其重置为默认颜色。
My question is: How can I get the Customizer’s color picker to show a “Default” button instead of the "Clear" button?
这是我添加到主题定制器中的自定义函数。php文件:
function mytheme_customize_register( $wp_customize ) {
$wp_customize->add_setting( \'footer_color\',
array(
\'default\' => \'#000000\',
\'transport\' => \'refresh\',
\'sanitize_callback\' => \'sanitize_hex_color\',
)
);
$wp_customize->add_control( \'footer_color\',
array(
\'label\' => __( \'Footer Color\', \'textdomain\' ),
\'section\' => \'colors\',
\'type\' => \'color\',
\'capability\' => \'edit_theme_options\',
)
);
}
add_action( \'customize_register\', \'mytheme_customize_register\' );
下面是生成的颜色选择器的外观。(我的颜色选择器显示的不是“默认”按钮,而是“清除”按钮,用于清除颜色输入,但不会将其重置为默认颜色):
SO网友:crispy
事实上,在WordPress上善良的开发人员的帮助下,我成功地实现了这一点。org论坛,我将在这里发布我的问题的答案,以帮助任何有同样问题的人。
如果存在WP核心功能,最好使用它,这是颜色控件的情况,并创建核心WP\\u Customize\\u color\\u Control类的实例。
以下是更正的代码:
function mytheme_customize_register( $wp_customize ) {
$wp_customize->add_setting( \'footer_color\',
array(
\'default\' => \'#000000\',
\'transport\' => \'refresh\',
\'sanitize_callback\' => \'sanitize_hex_color\',
)
);
$wp_customize->add_control(
new WP_Customize_Color_Control(
$wp_customize,
\'footer_color\',
array(
\'label\' => __( \'Footer Color\', \'textdomain\' ),
\'section\' => \'colors\',
\'capability\' => \'edit_theme_options\',
)
)
);
}
add_action( \'customize_register\', \'mytheme_customize_register\' );