如何在WordPress定制器的默认面板和自定义面板之间添加分隔符?

时间:2016-12-13 作者:Nilanchala Panigrahy

我已经使用WordPress customizer实现了主题选项,它混合了本地WordPress customizer字段和Kirki框架。这很有效。

现在,我想知道是否可以在我的主题选项和默认WordPress定制器选项之间添加分隔符。与所附图像类似的内容。

猜猜看,这可以通过覆盖自定义CSS来实现。但我正在寻找一种本土的、更干净的方法。

enter image description here

3 个回复
SO网友:prosti

虽然定制器是使用主题选项以及WordPress中可以管理的所有内容的官方方式,但实际上没有添加分隔符的原语。

这并不明显,但我们要添加分隔符的Iframe通常可以包含顶层的面板和部分。

enter image description here

此外,您知道面板和部分是通过JavaScript管理的吗?

File: /wp-admin/customize.php
167:            <div id="customize-theme-controls">
168:                <ul class="customize-pane-parent"><?php // Panels and sections are managed here via JavaScript ?></ul>
169:            </div>
添加面板或空截面的可能道路不智能。这些是容器,如果没有具有关联设置的控件,则不会显示。创建空的自定义控件很简单,但并不那么聪明。

JavaScript对于普通的WordPress开发人员来说也是一种黑客行为,所以我认为CSS是一种方式。

说到JavaScript,当我们添加主干时。js加下划线。js(WordPress版本3.5)Nacin宣布JavaScript将很快主宰WordPress世界。我认为这会发生,但不会那么快。

SO网友:Mark Kaplun

您可能不应该在customizer“root”面板上有多个项目,因为该面板无法缩放,每个可能需要添加内容的插件都必须至少将其“root”放置在该面板上。

此外,从理论上讲,无法保证您的项目将被分组在一起,这将取决于您使用的优先级有多独特,以及wordpress如何解决具有相同优先级的项目的放置问题。

SO网友:kristich

我知道这很古老,但这里有一个解决方案,在“label”中键入this但删除空格\'‎[U+2 0 E]\'

 $wp_customize->add_setting(\'blank\', array(
        \'default\'        => \'\',
    ));

    $wp_customize->add_control(\'blank\', array(
        \'label\'   => \'‎\',
        \'section\' => \'usluge\',
        \'type\'    => \'hidden\',
    ));