wp_customize并选择布局

时间:2015-05-13 19:38:09

标签: php wordpress customization

所以我试图建立一个条件语句来根据所选的选项显示不同的布局。

有点麻烦。

$wp_customize->add_setting('layout', array(
  'default'           => 'stream',
  )); // add our default setting.
$wp_customize->add_control('layout', array(
  'label'      => __('Select layout', 'Ari'),
  'section'    => 'layout',
  'settings'   => 'layout',
  'type'       => 'radio',
  'choices'    => array(
    'stream'   => 'Stream',
    'grid'  => 'Grid',
  ),
)); // use radio buttons with (so far) two choices.
$wp_customize->add_section('layout' , array(
    'title' => __('Layout','Ari'),
)); // add our layout section in the customize panel.

显示我们的布局。

    <?php if ( get_theme_mod( 'stream' ) ) : ?>
    <p>stream</p> if ( have_posts() ) etc 
    <?php elseif ( get_theme_mod( 'grid' ) ) : ?>
    <p>grid</p> // if ( have_posts() )  etc
    <?php else : //Nothing ?>
    <?php endif; ?>

就什么都没有。我已经浏览了手抄本,但我无法看清我做错了什么。它只是没有显示任何输出。

@Stewartside指出我应该使用get_setting,但我无法使用它。任何人吗?

1 个答案:

答案 0 :(得分:0)

get_theme_mod()返回一个字符串,而不是布尔值。因此,您的if语句将始终失败,因为他们期望1true0false

您应该在get_setting功能中使用$wp_customize

Documentation