更改定制器中的Add_Theme_Support(‘Customer-Header’)的位置

时间:2015-07-02 作者:Jami Gibbs

我正在使用add_theme_support( \'custom-header\' ) 为图像滑块上载图像。滑块在自定义程序中还有其他设置(持续时间、淡入度、覆盖颜色等)。

因为有多个设置都与滑块相关,所以我想在同一个自定义程序面板中对所有设置进行分组,但我看不到移动的方法custom-header 进入同一面板。

有可用的设置,但在这种情况下似乎没有帮助:

$defaults = array(
    \'default-image\'          => \'\',
    \'width\'                  => 0,
    \'height\'                 => 0,
    \'flex-height\'            => false,
    \'flex-width\'             => false,
    \'uploads\'                => true,
    \'random-default\'         => false,
    \'header-text\'            => true,
    \'default-text-color\'     => \'\',
    \'wp-head-callback\'       => \'\',
    \'admin-head-callback\'    => \'\',
    \'admin-preview-callback\' => \'\',
);
add_theme_support( \'custom-header\', $defaults );

https://codex.wordpress.org/Custom_Headers

所以问题是如何自定义custom-header 在customizer中?

1 个回复
最合适的回答,由SO网友:Jami Gibbs 整理而成

这是一种很有技巧的方法来完成这一点,但深入研究核心发现默认的节名是header_image:

https://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/class-wp-customize-control.php#L734

因此,如果我们将要添加到的部分命名为header_image, 这个custom-header 设置将自动应用于该节。例如:

$wp_customize->add_panel( 
    \'example_panel\', 
        array(
        \'priority\' => 10,
        \'capability\' => \'edit_theme_options\',
        \'theme_supports\' => \'\',
        \'title\' => __( \'Example Panel\', \'textdomain\' ),
        \'description\' => __( \'Description of what this panel does.\', \'textdomain\' ),
    ) 
);

$wp_customize->add_section(
    \'header_image\',
    array(
        \'title\' => __( \'Slider Images\', \'textdomain\' ),
        \'description\' => __( \'This is a section for the slider images.\', \'textdomain\' ),
        \'priority\' => 10,
        \'panel\' => \'example_panel\',
    )
);

/* Header Image controls will load here */
将显示标题图像控件,您可以继续在面板中添加其他设置:

$wp_customize->add_control(
    \'example_text\',
    array(
        \'label\' => __( \'Example Text\', \'textdomain\' ),
        \'section\' => \'header_image\',
        \'type\' => \'text\',
        \'panel\' => \'example_panel\'
    )
);

结束

相关推荐

ADD_THEME_SUPPORT(‘CUSTOM-HEADER’)不在仪表板中添加选项菜单

我正在根据工具箱主题从头开始写一个新主题。我的WP安装是开箱即用的。我添加了add\\u theme\\u支持(“custom-header”);我的职能。php文件,但“标题”选项屏幕不会显示在仪表板中。如果我访问该站点,我可以在顶部的工具栏中看到它,但不能在仪表板中看到它。我错过什么了吗?