get_theme_mod not working

时间:2016-06-07 作者:J. Doe

由于某种原因,我无法输出颜色。一切正常,但text_color 只是不想输出它的值。

出了什么问题?

后端代码(functions.php):

$wp_customize->add_setting(\'text_color\', array(
    \'default\'           => \'#fff\',
    \'sanitize_callback\' => \'sanitize_hex_color\',
    \'type\'           => \'option\',
));

$wp_customize->add_control( new WP_Customize_Color_Control($wp_customize, \'text_color\', array(
    \'label\'    => __(\'Text color\', \'pc\'),
    \'section\'  => \'colors\',
    \'settings\' => \'text_color\',
)));
前端代码:

if(!empty(get_theme_mod( \'text_color\' ))) {
?>
h1, h2, h3, h4, h5, h6 {
    color:<?php echo get_theme_mod( \'text_color\' ); ?>
}
<?php
}

3 个回复
SO网友:mistertaylor

这个\'type\'=>\'option\' 颜色选择器不需要参数,而是使用:

$wp_customize->add_setting(\'text_color\', array(
    \'default\'           => \'#fff\',
    \'sanitize_callback\' => \'sanitize_hex_color\',
));

SO网友:ttn_

具有

type => option
使用

get_option( \'text_color\' )

type => theme_mod (default)
使用

get_theme_mod( \'text_color\' )
更多信息:https://codex.wordpress.org/Class_Reference/WP_Customize_Manager/add_setting

SO网友:Abdelhadi Abdo

如果您正在使用此

add_setting(\'text_color\'...
而不是

add_setting(\'themename_theme[\'text_color\'] ....
您应该通过以下方式检索数据

get_option(\'text_color\');

相关推荐