【发布时间】:2014-04-03 13:53:40
【问题描述】:
我不知道如何从 WP 自定义管理器中的复选框中获取值 - 无论它们是否被选中。
这是functions.php中的代码:
$wp_customize->add_setting('social_facebook', array(
'type' => 'option',
));
$wp_customize->add_control(
new WP_Customize_Control(
$wp_customize,
'social_facebook',
array(
'label' => __( 'Facebook', 'theme_name' ),
'section' => 'social-icons',
'settings' => 'social_facebook',
'type' => 'checkbox',
)
)
);
这就是我尝试获取价值的方式:
<?php
$facebook = get_theme_mod('social_facebook');
if ($facebook != ''){?>
<style>
.facebook {display:inline!important;}
</style>
<?php }
?>
复选框的值要么是“”(空)要么是“1”,因此系统会记录它们的检查。但是,我不知道如何通过 get_theme_mod 方法获取值。此外,它们没有任何名称值,因此我也无法通过通常的方式获取值。
【问题讨论】:
-
get_theme_mod() 适用于 set_theme_mod() 而不是设置 API
-
那么,你建议我做什么?
-
get_theme_mod()确实适用于设置 API,但前提是设置类型为theme_mod(或未指定)。这里设置类型指定为option,所以需要get_option()来取值。
标签: wordpress checkbox customization