Custom plugin settings page with tab. Error: “Sorry, you are not allowed to access this page.”

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
}

Read more here:: Custom plugin settings page with tab. Error: “Sorry, you are not allowed to access this page.”

Leave a Reply

Your email address will not be published. Required fields are marked *