我正在使用Customizer API启用/禁用网站的不同部分。
当我打开customizer窗口时,似乎get_theme_mod()
正在返回值ok。但是只要我save 和close customizer窗口,get_theme_mod()
不返回任何内容。
我看到了一些关于使用的其他问题type="option"
和get_option()
但我想看看我能不能把这件事做好。
我的设置如下所示:
$wp_customize->add_setting( \'my_banner_setting\', array(
\'default\' => \'1\',
\'sanitize_callback\' => \'my_sanitize_checkbox\',
) );
然后我得到如下结果:
if ( get_theme_mod( \'my_banner_setting\' ) == 1 ) {
get_template_part( \'sections/banner\' );
}
我有什么遗漏吗?
最合适的回答,由SO网友:Timothy Fisher 整理而成
看起来我可以通过在get_theme_mod()
if ( get_theme_mod(\'my_banner_setting\', 1) == 1 ) {
// proceed
}
不确定是否有其他解决方案,但这解决了它。
update
看起来这实际上是因为我的“1”在引号中,删除引号有效,并且我不必在中声明默认值
get_theme_mod()
再一次
$wp_customize->add_setting( \'my_banner_setting\', array(
\'default\' => 1,
\'sanitize_callback\' => \'my_sanitize_checkbox\',
) );