<?php
/**
 * Fonction pour cacher des items du menu aux non-administrateurs
 *
 * @author 	Luc Poupard
 *
 * @link 	http://codex.wordpress.org/Function_Reference/remove_menu_page 
 *			http://codex.wordpress.org/Function_Reference/remove_submenu_page
 *
 * @package	CDI_Base_Child 2.1.0
 * @since	CDI_Base_Child 2.0.0
 */


/* ----------------------------- */
/* Sommaire */
/* ----------------------------- */
/*
	== Tous les utilisateurs
		-- Menu
		-- Sous-menu
		-- Extensions
	== Tous les utilisateurs sauf admin
		-- Menu
		-- Sous-menu
		-- Extensions
	== Tous les admins sauf admins CDI
		-- Menu
		-- Sous-menu
		-- Extensions
	== Page Personnaliser
 */


/**
 * On peut masquer chaque item du menu indépendamment.
 * Il suffit de commenter ou décommenter la ligne correspondante.
 */
function cdiwp_delete_menu_items() {
	/* == @section Tous les utilisateurs ==================== */
	/* -- @subsection Menu -------------------- */
	/* @note Syntaxe : remove_menu_page( $menu_slug ) */

	/* Dashboard */
	// remove_menu_page( 'index.php' );

	/* Posts */
	// remove_menu_page( 'edit.php' );

	/* Media */
	// remove_menu_page( 'upload.php' );

	/* Links */
	// remove_menu_page( 'link-manager.php' );

	/* Pages */
	// remove_menu_page( 'edit.php?post_type=page' );

	/* Custom Post Types */
	// remove_menu_page( 'edit.php?post_type=slug-cpt' );
	/* CPT Enfold */
	// remove_menu_page( 'edit.php?post_type=portfolio' );
	// remove_menu_page( 'admin.php?page=avia' );
	// remove_menu_page( 'avia' );

	/* Comments */
	remove_menu_page( 'edit-comments.php' );

	/* Appearance */
	// remove_menu_page( 'themes.php' );

	/* Plugins */
	// remove_menu_page( 'plugins.php' );

	/* Users */
	// remove_menu_page( 'users.php' );

	/* Tools */
	// remove_menu_page( 'tools.php' );

	/* Settings */
	// remove_menu_page( 'options-general.php' );


	/* -- @subsection Sous-menu -------------------- */
	/* @note Syntaxe : remove_submenu_page( $menu_slug, $submenu_slug ) */

	/* Edit > Tags */
	// remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=post_tag' );
	

	/* -- @subsection Extensions -------------------- */
	/* @note Se référer à la documentation des extensions si disponible */

	/* Contact Form 7 */
	// remove_menu_page( 'wpcf7' );

    /* Ninja Forms 3 */    
    // remove_menu_page( 'ninja-forms' );

	/* MainWP */
	// remove_menu_page( 'mainwp_child_tab' );

	/* All in One WP Security */
	// remove_menu_page( 'aiowpsec' );

	/* ACF */
	// remove_menu_page( 'edit.php?post_type=acf-field-group' );

	/* ACF - Options */
	// remove_menu_page( 'acf-options' );

	/* Event Espresso */
	// remove_menu_page( 'event_espresso' );

	/* Meta Slider */
	// remove_menu_page( 'metaslider' );


	/* == @section Tous les utilisateurs sauf admin ==================== */
	/**
	 * Si des utilisateurs autres que les admins CDI ont aussi les droits d'admin,
	 * se reporter à la section 'Tous les admins sauf admins CDI' juste en-dessous.
	 */
	if( ! current_user_can( 'add_users' ) ) {
		/* -- @subsection Menu -------------------- */
		/* Tools */
		remove_menu_page( 'tools.php' );


		/* -- @subsection Sous-menu -------------------- */
		/* Appearance - Themes */
		remove_submenu_page( 'themes.php', 'themes.php' );

		/* Appearance > Widgets */
		remove_submenu_page( 'themes.php', 'widgets.php' );
	}


	/* == @section Tous les admins sauf admins CDI ==================== */
	/**
	 * Si des utilisateurs autres que les admins CDI ont aussi les droits d'admin,
	 * vous pouvez masquer les menus à tous les utilisateurs sauf à certains.
	 *
	 * Indiquer dans les identifiants des comptes CDI. Exemple :
	 * $admins_cdi = array( 'wp_bcul', 'wp_bcul_lup', 'wp_bcul_fro', 'wp_bcul_she' );
	 */
	// global $current_user;
	// $admins_cdi = array( 'wp_bcul', 'wp_bcul_lup', 'wp_bcul_fro', 'wp_bcul_she' );

	// if ( array_intersect( $admins_cdi, $current_user->user_login ) ) {
	// 	/* -- @subsection Menu -------------------- */
		/* Appearance */
		// remove_menu_page( 'themes.php' );

		/* Plugins */
		// remove_menu_page( 'plugins.php' );

		/* Settings */
		// remove_menu_page( 'options-general.php' );

	// 	/* -- @subsection Sous-menu -------------------- */		

	// 	/* -- @subsection Extensions -------------------- */
		/* MainWP */
		// remove_menu_page( 'mainwp_child_tab' );

		/* All in One WP Security */
		// remove_menu_page( 'aiowpsec' );
	// }
}
add_action( 'admin_menu', 'cdiwp_delete_menu_items', 9999 ); // 9999 permet d'outrepasser les paramètres d'extensions


/* == @section Page Personnaliser ==================== */
/**
 * Le lien Personnaliser étant masqué dans le thème parent, si vous souhaitez l'afficher,
 * il suffit de décommenter la fonction suivante.
 */
// function cdiwp_customize_page() {
// 	/* Do nothing */
// }
// add_action( 'admin_menu', 'cdiwp_customize_page' );