Or, embed this snippet using GenerateWP WordPress Plugin.

Download

Clone

Authors

Used to create admin menu for guest-authors (Co-authors Plus)

class Authors_Menu {

	public function __construct() {

		add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
		add_action( 'admin_init', array( $this, 'init_settings'  ) );

	}

	public function add_admin_menu() {

		add_menu_page(
			esc_html__( 'Authors', 'site-functionality' ),
			esc_html__( 'Authors', 'site-functionality' ),
			'list_users',
			'authors',
			array( $this, 'render' ),
			'dashicons-businessperson',
			25
		);

	}

	public function init_settings() {

		register_setting(
			'authors_group',
			'authors_setting'
		);

		add_settings_section(
			'authors_setting_section',
			'',
			false,
			'authors_setting'
		);


	}

	public function render() {

		// Check required user capability
		if ( !current_user_can( 'list_users' ) )  {
			wp_die( esc_html__( 'You do not have sufficient permissions to access this page.', 'site-functionality' ) );
		}

		// Admin Page Layout
		echo '<div class="wrap">' . "n";
		echo '	<h1>' . get_admin_page_title() . '</h1>' . "n";
		echo '	<form action="options.php" method="post">' . "n";

		settings_fields( 'authors_group' );
		do_settings_sections( 'authors_setting' );
		submit_button();

		echo '	</form>' . "n";
		echo '</div>' . "n";

	}

}

new Authors_Menu;