I have the code below to show different settings for each tab. Contents shown depends on the url paratmer action
. When I try selecting a tab, wordpress gives me a Sorry, you are not allowed to access this page.
error. Please see the code below.
function minutes_settings_content() {
?>
<div class="wrap">
<div id="icon-themes" class="icon32"></div>
<h2>Email & SMS Settings</h2>
<?php settings_errors(); ?>
<?php $active_tab = isset( $_GET[ 'action' ] ) ? $_GET[ 'action' ] : 'email_sms_options'; ?>
<h2 class="nav-tab-wrapper">
<a href="<?php echo esc_url( add_query_arg( array( 'action' => 'email_sms_options' ), admin_url( 'edit.php?post_type=wellbeing-minutes&page=minutes-email-settings' ) ) ); ?>" class="nav-tab">Email & SMS</a>
<a href="<?php echo esc_url( add_query_arg( array( 'action' => 'testing_mode_options' ), admin_url( 'edit.php?post_type=wellbeing-minutes&page=minutes-email-settings' ) ) ); ?>" class="nav-tab">Testing Mode</a>
</h2>
<form action='options.php' method='post'>
<?php
if ( $active_tab == 'email_sms_options' ) {
settings_fields( 'EmailSmsMinute' );
do_settings_sections( 'EmailSmsMinute' );
}
elseif ( $active_tab == 'testing_mode_options' ) {
settings_fields( 'wb_minute_testing_mode' );
do_settings_sections( 'wb_minute_testing_mode' );
}
submit_button();
?>
</form>
</div>
<?php
}
register_settings