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

Question

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
}
0
marccaps 2 years 2020-12-26T10:10:41-05:00 0 Answers 4 views 0

Leave an answer

Browse
Browse