众所周知,当我们想在某个特定页面中显示某个设置部分时,通常我们必须将要显示该部分的页面的slug名称传递给它。它可以百分之百地工作,但我面临的问题是,当我只想在一个主题页选项中使用选项卡式导航时,我试图遵循核心规则,因此我创建了两个部分,并使用选项卡式导航将它们分隔开,以避免干扰nonce。这是我的密码。
// These Are The registering settings for the Fields .
register_setting( \'busymarket-header-settings\', \'busymarkets-breadcrumb-setting\' );
register_setting( \'busymarket-footer-settings\', \'busymarkets-main-footer-setting\' );
register_setting( \'busymarket-footer-settings\', \'busymarkets-left-btm-footer-setting\' );
register_setting( \'busymarket-footer-settings\', \'busymarkets-right-btm-footer-setting\' );
$active_tab = \'header_options\';
if ( isset( $_GET[ \'tab\' ] ) ) {
if ( $_GET[ \'tab\' ] == \'header_options\' ) {
$active_tab = \'header_options\';
} else if ( $_GET[ \'tab\' ] == \'footer_options\' ) {
$active_tab = \'footer_options\';
}
}
<!-- Create A Tabbed Navigation For The Settings API -->
<h2 class="nav-tab-wrapper">
<a href="<?php echo admin_url( \'?page=busymarkets-theme-panel&tab=header_options\' ); ?>" class="nav-tab<?php echo $active_tab == \'header_options\' ? \' nav-tab-active\' : \'\'; ?>">Header Options</a>
<a href="<?php echo admin_url( \'?page=busymarkets-theme-panel&tab=footer_options\' ); ?>" class="nav-tab<?php echo $active_tab == \'footer_options\' ? \' nav-tab-active\' : \'\'; ?>">Footer Options</a>
</h2>
// The \'busymarket-header-settings\' is The Option Group For The Header option .
// The \'busymarket-footer-settings\' is The Option Group For The Footer option .
if ( $active_tab == \'footer_options\' ) {
// Footer Settings Registering .
settings_fields( \'busymarket-footer-settings\' );
do_settings_sections( \'busymarkets-theme-panel\' );
} else if ( $active_tab == \'header_options\' ) {
// Footer Settings Registering .
settings_fields( \'busymarket-header-settings\' );
do_settings_sections( \'busymarkets-theme-panel\' );
}
submit_button();
这里的问题是
do_settings_sections()
接受我们要在其中输出节字段的页面的slug名称,以及我正在使用选项卡导航的事实,我编写了一个条件代码,如下所示,以不干扰nonces,只为每个选项卡显示一个节设置,但它不起作用。
我在很多教程中看到,一些开发人员使用的特定段塞名称与页面的段塞名称相差甚远,无论我单击哪个选项卡,我都会看到相同的节字段,不会发生任何变化。
那么,请问有什么办法可以让这些东西正常工作吗?