๊ด๋ฆฌ์ ์์ญ ๋ด์์ ์ฌ์ฉ๋์ง ์์ ๋ง์ ๊ฒ๋ค์ ์ ๋ฆฌํ๋ ๋ค์ ์ฝ๋๊ฐ ์์ต๋๋ค.
add_action( 'admin_menu', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
remove_menu_page( 'edit.php' ); //Posts
remove_menu_page( 'upload.php' ); //Media
remove_menu_page( 'edit-comments.php' ); //Comments
remove_menu_page( 'themes.php' ); //Appearance
remove_menu_page( 'users.php' ); //Users
remove_menu_page( 'tools.php' ); //Tools
remove_menu_page( 'options-general.php' ); //Settings
};
๊ทธ๋ฌ๋ ํ๋ฌ๊ทธ์ธ์์ ์ฝ์ ๋ ๋ ๊ฐ์ ๋ฉ๋ด ํญ๋ชฉ์ด ์์ต๋๋ค.
๊ฐ ๋ฉ๋ด ํญ๋ชฉ ์๋ก ๋ง์ฐ์ค๋ฅผ ๊ฐ์ ธ ๊ฐ๋ฉด ๋งํฌ๊ฐ ๋ค์๊ณผ ๊ฐ์ด ํ์๋ฉ๋๋ค.
/wp-admin/edit.php?post_type=acf
/wp-admin/admin.php?page=wpcf7
์ด ๋ฉ๋ด ํ์ด์ง๋ฅผ ์จ๊ธฐ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
๋ต๋ณ
์ฌ๋ฐ๋ฅธ ํํฌ (URL / ์ฌ๋ฌ๊ทธ์ ํญ์ ๋์ผํ์ง๋ ์์)๋ฅผ ์ฌ์ฉํด์ผํ๋ฉฐ ๋์ค์ ์คํ๋๋ ํํฌ (์ :)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋ฌธ์ ๊ฐ๋์ง ์์ต๋๋ค admin_init
.
add_action( 'admin_init', 'wpse_136058_remove_menu_pages' );
function wpse_136058_remove_menu_pages() {
remove_menu_page( 'edit.php?post_type=acf' );
remove_menu_page( 'wpcf7' );
}
๋ค์์ ์ฌ์ฉํ์ฌ ๋๋ฒ๊น ํ ์ ์์ต๋๋ค.
add_action( 'admin_init', 'wpse_136058_debug_admin_menu' );
function wpse_136058_debug_admin_menu() {
echo '<pre>' . print_r( $GLOBALS[ 'menu' ], TRUE) . '</pre>';
}
Contact Form 7 ํ๋ฌ๊ทธ์ธ ๋ฉ๋ด ํ์ด์ง์ ๋ํด ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํฉ๋๋ค.
[27] => Array
(
[0] => Formular
[1] => wpcf7_read_contact_forms
[2] => wpcf7
[3] => Contact Form 7
[4] => menu-top menu-icon-generic toplevel_page_wpcf7 menu-top-last
[5] => toplevel_page_wpcf7
[6] => none
)
ํค 2
๊ฐ์๋ ๋ฐฐ์ด ์์ ๋ ๋น์ ์ด ์ฐพ๊ณ ์๋ ๊ฒ์
๋๋ค : wpcf7
.
๋ต๋ณ
// PLUGINS THAT ADD AS DASHBOARD SUBMENU
// IF THIS IS THE URL BELOW - THE PAGE VARIABLE IS WHAT I NEED ( SO WHATEVER COMES AFTER PAGE= )
// http://example.com/wp-admin/index.php?page=iconize-plugin-update-notifier
remove_submenu_page( 'index.php', 'iconize-plugin-update-notifier' );
// OR FOR EXAMPLE WOOCOMMERCE DASHBOARD SUBMENU
remove_submenu_page( 'index.php', 'wc-about' ); //WOO
remove_submenu_page( 'index.php', 'wc-credits' ); //WOO
remove_submenu_page( 'index.php', 'wc-translators' ); //WOO
// CUSTOM POST TYPE TOP LEVELS
remove_menu_page( 'edit.php?post_type={$POST_TYPE}' ); //LOOK FOR WHAT COMES AFTER POST TYPE IN THE URL
remove_menu_page( 'edit.php?post_type=testimonials-widget' ); //TESTIMONIALS WIDGET
remove_menu_page( 'edit.php?post_type=product' ); //WOOCOMMERCE
// CUSTOM POST TYPE SUBMENU
remove_submenu_page( 'edit.php?post_type={$POST_TYPE}', '{$SUBMENU_URL_VARIABLE}' ); //EXAMPLE FORMAT
// SO IF BELOW IS THE URL
// http://example.com/wp-admin/edit.php?post_type=testimonials-widget&page=testimonialswidget_settings
// YOU NEED TO SEE WHATS AFTER PAGE
remove_submenu_page( 'edit.php?post_type=testimonials-widget', 'testimonialswidget_settings' ); //TESTIMONIALS WIDGET
// OTHER EXAMPLES
remove_menu_page( 'revslider' ); // REVSLIDER
remove_menu_page( 'woocommerce' ); // WOOCOMMERCE
remove_menu_page( 'order-post-types-shop_order' ); // WOOCOMMERCE
remove_menu_page( 'order-post-types-shop_coupons' ); // WOOCOMMERCE
remove_menu_page( 'shortcodes-ultimate' ); // SHORTCODES ULTIMATE
remove_menu_page( 'wp-admin-microblog/wp-admin-microblog.php' ); // ADMIN MICROBLOG
remove_menu_page( 'snippets' ); //CODE SNIPPETS
remove_menu_page( 'gf_edit_forms' ); // GRAVITY FORMS
remove_submenu_page( 'gf_edit_forms', 'gf_settings' ); // GRAVITY FORMS
remove_submenu_page( 'gf_edit_forms', 'gf_export' ); // GRAVITY FORMS
remove_submenu_page( 'gf_edit_forms', 'gf_update' ); // GRAVITY FORMS
remove_submenu_page( 'gf_edit_forms', 'gf_addons' ); // GRAVITY FORMS
remove_submenu_page( 'gf_edit_forms', 'gf_help' ); // GRAVITY FORMS
remove_submenu_page( 'cleverness-to-do-list', 'cleverness-to-do-list-settings' ); //Cleverness TODO
๋น์ ์ ๋น์ ์ด ํ์๋กํ๋ ๋ชจ๋ ์ ๋ณด๋ฅผ ์ป๊ธฐ ์ํด ๋ค์๊ณผ ํจ๊ป์ด ๋ชจ๋ ๊ฒ์ ๋๋ฒ๊น ํ ์ ์์ต๋๋ค :
if (!function_exists('debug_admin_menus')):
function debug_admin_menus() {
if ( !is_admin())
return;
global $submenu, $menu, $pagenow;
if ( current_user_can('manage_options') ) { // ONLY DO THIS FOR ADMIN
if( $pagenow == 'index.php' ) { // PRINTS ON DASHBOARD
echo '<pre>'; print_r( $menu ); echo '</pre>'; // TOP LEVEL MENUS
echo '<pre>'; print_r( $submenu ); echo '</pre>'; // SUBMENUS
}
}
}
add_action( 'admin_notices', 'debug_admin_menus' );
endif;
ํค๋ฅผ ์ฌ์ฉํ๋ฉด ์๋ ํ๋ ์ค ์ ์ญ ์ผ๋ก์ด ๋ชจ๋ ์์ ์ ์ํ ํ ์์๋ ๋ฐฐ์ด ๊ฐ์ด ์ ๊ณต๋ฉ๋๋ค (๊ถ์ฅํ์ง๋ ์์ง๋ง)
function remove_submenus_all_please() {
if ( !is_admin())
return;
global $submenu;
unset($submenu['index.php'][10]); // Removes Updates
//Posts menu
// unset($submenu['edit.php'][5]); // Leads to listing of available posts to edit
// unset($submenu['edit.php'][10]); // Add new post
// unset($submenu['edit.php'][15]); // Remove categories
// unset($submenu['edit.php'][16]); // Removes Post Tags
}
add_action('admin_menu', 'remove_submenus_all_please', 999);
๋ํ ํน์ ์ฌ์ฉ์๋ฅผ ์ ๊ฑฐํ๋ ค๋ฉด ๊ธฐ๋ฅ์ด ์ถ๊ฐ ๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ ๋์ผํ ์์ ์ ์ํํ์ญ์์ค.
function remove_by_caps_admin_menu() {
if ( !is_admin())
return;
if ( !current_user_can('manage_options') ) {
remove_menu_page( 'revslider' ); // REVSLIDER
} elseif ( !current_user_can('edit_posts') ) {
remove_menu_page( 'woocommerce' ); // WOO
} else {
}
}
add_action('admin_menu', 'remove_by_caps_admin_menu', 999);
์ ์ฐ๋ฆฌ์ ๊ท๋ฒ์ ๋ฐํ์ง ์๋๊ฐ? remove_submenu_page๋ฅผ 50 ๋ฒ ์ฐ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ฐฐ์ด์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํด๋ฐ ๋ ธ๋์์๋ ์๋ํฉ๋๋ค.
if ( !function_exists( 'remove_admin_menupages_in_array' ) ) {
function remove_admin_menupages_in_array() {
if ( !is_admin())
return;
$admin_menus = array(
'revslider',
'woocommerce',
'shortcodes-ultimate',
);
foreach ( $admin_menus as $menu_page ) {
if ( !current_user_can('manage_options') ) {
remove_menu_page( $menu_page );
}
} // foreach
} // function
add_action('admin_menu', 'remove_admin_menupages_in_array', 9999);
} // exists
๋ต๋ณ
add_action ์ฐ์ ์์ ๋ฅผ ๋ ๋์ ์๋ก ์ค์ ํ๊ณ ๋ ๊ฐ์ ์ ๋งํฌ๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ด ํ๊ฒํ ํด์ผํฉ๋๋ค.
add_action( 'admin_menu', 'my_remove_menu_pages', 999 );
function my_remove_menu_pages() {
remove_menu_page( 'edit.php' ); //Posts
remove_menu_page( 'upload.php' ); //Media
remove_menu_page( 'edit-comments.php' ); //Comments
remove_menu_page( 'themes.php' ); //Appearance
remove_menu_page( 'users.php' ); //Users
remove_menu_page( 'tools.php' ); //Tools
remove_menu_page( 'options-general.php' ); //Settings
remove_menu_page( 'edit.php?post_type=acf' );
remove_menu_page( 'wpcf7' );
};
๊ณ ๊ธ ์ฌ์ฉ์ ์ ์ ํ๋๋ ๋ฉ๋ด์์์ด ์์ ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๋์๋ง ๋ฌธ์๋ ์ ๊ณตํฉ๋๋ค.
http://www.advancedcustomfields.com/resources/how-to/how-to-hide-acf-menu-from-clients/
Contact Form 7์๋ ๋ฉ๋ด์ ๊ฐ์์ฑ์ ์ ํํ๋ ์์ฒด ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
http://contactform7.com/restricting-access-to-the-administration-panel/
๋ต๋ณ
์ต์ ์ ๋ณด
๋ด๊ฐ ์ฝ๋ ์กฐ๊ฐ์ ๋ง๋ค์ด ๋์ฑ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ด ๋ฉ์ธ ๋ฉ๋ด์ ํ์ ๋ฉ๋ด ํญ๋ชฉ์ ๋ชจ๋ ๋ค๋ฃฌ๋ค.
์๋ ๋ต๋ณ
์ ๊ฑฐํ๋ ค๋ ๋ฉ๋ด๋ฅผ ์ง์ ํ๋ ๋์ ์ ์งํ๋ ค๋ ๋ฉ๋ด๋ฅผ ์ง์ ํ์ญ์์ค. ๐
add_action('admin_init', 'nwcm_admin_init');
function nwcm_admin_init()
{
// Remove unnecessary menus
$menus_to_stay = array(
// Client manager
'nwcm',
// Dashboard
'index.php',
// Users
'users.php'
);
foreach ($GLOBALS['menu'] as $key => $value) {
if (!in_array($value[2], $menus_to_stay)) remove_menu_page($value[2]);
}
}
์ด๋ฐ ์์ผ๋ก ์ ํ๋ฌ๊ทธ์ธ์ ์ถ๊ฐ ํ ๋ ํ๋ฌ๊ทธ์ธ ์ด๋ฆ์ ๊ฒ์ํ๊ณ ์ฝ๋๋ฅผ ์์ ํ ํ์๊ฐ ์์ต๋๋ค.
๋ต๋ณ
์ฌ๋ฐ๋ฅธ $ menu_slug๋ฅผ ์ฐพ์์ผํฉ๋๋ค. ๋ค์ ์ฝ๋๋ ์ ์๊ฒ ํจ๊ณผ์ ์ด์์ต๋๋ค.
add_action( 'admin_init', 'remove_menus' );
function remove_menus(){
remove_menu_page( 'wpcf7' );
}
๋ต๋ณ
๋ฌผ๋ก ์ ๊ฑฐํ๋ ค๋ ํญ๋ชฉ ๋ง ์ง์ ํ ์ ์์ต๋๋ค. ์๋ ์ฝ๋๋ฅผ ์ดํด๋ณด์ญ์์ค.
/wordpress/wp-content/plugins/your_plugin/your_plugin.php :
add_action('admin_init', 'nwcm_admin_init');
function nwcm_admin_init()
{
// Remove unnecessary menus
$menus_to_remove = array(
// menu items you want to remove
'menu_item_1',
'menu_item_2',
.
.
'menu_item_n'
);
// To avoid warning message, check whether 'menu' is set AND is an array
if(isset($GLOBALS['menu']) && is_array($GLOBALS['menu'])) {
foreach ($GLOBALS['menu'] as $key => $value) {
//Remove the '!' in the 'if' condition.
if (in_array($value[2], $menus_to_remove)) remove_menu_page($value[2]);
}
}
}
์ด๊ฒ์ numediaweb์ ๋ฐฉ๋ฒ์ ๋จ์ ์ ๋๋ค. @numediaweb ๊ฐ์ฌํฉ๋๋ค. ์ ์๋ํฉ๋๋ค.
์ถ์ : โmenu_item_1 / nโ-> ๋ฉ๋ด ํญ๋ชฉ ์์ ๋ง์ฐ์ค๋ฅผ ๋๊ณ ๋งํฌ์ ํ์๋ ํด๋น ๋ฉ๋ด ํญ๋ชฉ์ ์ ํํ ํ์ด์ง๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
๋ต๋ณ
์ด ์ฝ๋ ์ค ๋ํซ์ ์ฌ์ฉํ์ญ์์ค
function your_custom_name() {
remove_menu_page('vc-general'); //the slug as seen wp-admin.php?page=vc-general
}
add_action( 'admin_init', 'your_custom_name' );