custom post types - Options page - dropdown of users

admin2025-06-02  2

I want to create an options page in WPAdmin that will let me select among registered post type "Members" and anoint them as "captains". Here is my code so far but the dropdown is not functioning correctly.

Any help much appreciated!

/* Admin Captains
––––––––––––––––––––––––––––––––––––––––––––––––––*/


// Create the menu

add_action( 'admin_menu', 'my_admin_captains' );

function my_admin_captains() {
    // Add the sub-menu to Users
    add_submenu_page( 'users.php', 'My Admin Captain Options', 'My Admin Captains', 'manage_options', 'admin_captains_options', 'my_admin_captains_options');
    // Call the register settings function
    add_action( 'admin_init', 'register_my_admin_captains_options' );
}

function register_my_admin_captains_options() {
    //register our settings
    register_setting( 'my_admin_captains_options_group', 'admin_captain_projects' );
    register_setting( 'my_admin_captains_options_group', 'admin_captain_people' );
}


// Create the page

function my_admin_captains_options() {
    if ( !current_user_can( 'manage_options' ) )  {
        wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
    }

    ?>


    <div class="wrap">
        <h1>Admin Captains</h1>
        <p>This page assigns users as "Admin Captains", showcasing them on the home page as people responsible for particular areas of I/O.</p>

        <form method="post" action="options.php">

            <?php settings_fields( 'my_admin_captains_options_group' ); ?>
            <?php do_settings_sections( 'my_admin_captains_options_group' ); ?>

            <h4>Projects &amp; Documents Captain</h4>


            <?php
                $teamMembers = get_posts( array(
                            'post_type'      => 'members',
                            'posts_per_page' => -1
                            )
                            );
                $ac_projects = esc_attr( get_option('admin_captain_projects') );
                $ac_projects = explode(",", $ac_projects);  

                echo '<select class="chosen" name="admin_captain_projects[]"  style="width:300px;">';
                echo '<option value="0"></option>';
                foreach ($teamMembers as $p) {
                    $selected ="";
                    if (in_array($p->ID, $ac_projects)) {
                        $selected = ' selected="selected" ';
                     }
                    // echo '<option'.$selected.' value="'.$p->ID .'">'. $p->post_title   .'</option>';


                }
                echo '</select>';







            ?>



            <?php submit_button(); ?>
        </form>





    </div>

<?php
}
转载请注明原文地址:http://conceptsofalgorithm.com/Algorithm/1748818395a313980.html

最新回复(0)