Hoe kan ik WordPress menu's verbergen (verwijderen) in het admingebied?

  

2
Onderwerp starter

Voor een WordPress project wil ik graag een bepaald menu (of menu's in de toekomst) verbergen (verwijderen) in het WP dashboard gebied (het admin gebied);

Bijvoorbeeld: Menu berichten;

Hoe kan ik dat doen?

Ik zou liever wat PHP-code gebruiken als een function als ik kind thema en kan modilfy de functions.php bestand voor.

Bedankt

P.s. Hieronder zie je een screenshot van het wordpress menu dat ik wil verbergen:

hoe wordpress menu verbergen in functions code

1 antwoord
1

Voeg in het WordPress-thema van je kind in het bestand functions.php de volgende code toe:

/* Remove menus from the WordPress dashboard*/
function wpdocs_remove_menus() {
    remove_menu_page('index.php'); //Dashboard
    remove_menu_page('edit.php'); //Posts
    remove_menu_page('upload.php'); //Media
    remove_menu_page('edit.php?post_type=page'); //Pages
    remove_menu_page('edit-comments.php'); //Comments
    remove_menu_page('themes.php'); //Appearance
    remove_menu_page('plugins.php'); //Plugins
    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=project'); //Projects
}
 
add_action('admin_menu', 'wpdocs_remove_menus');

Ik heb de admin_menu WordPress haak (lijn #16);

In jouw geval zie je de code op regel #4 - voor het menu Posts.

Je kunt ook zie deze link


Voor menu's die NIET gerelateerd aan de WordPress kern (Pagina's, Berichten, enz.) kun je ook de admin_init (op regel 8 hieronder) haak;

In dat geval moet je de map of het bestand van de plugin of het thema typen;

Zie de schermafbeelding van wat ik bedoel (zie regel 4 voor de Yoast WP plugin):

verberg wordpress plugin of menu of thema

Hier verstop ik me:

  • Divi-thema menu
  • WP Yoast SEO menu
  • Activiteitenlogboek plugin

Hier is het voorbeeld (zie de opmerkingen in de code hieronder):

/* Hide plugin/theme/menu in the WordPress dashboard area */
function wpdocs_remove_menusTwo() {
    remove_menu_page('et_divi_options'); //Divi WP Theme
    remove_menu_page('wpseo_dashboard'); //Yoast SEO WP Plugin
    remove_menu_page('activity_log_page'); //Activity Log WP Plugin
}
 
add_action('admin_init', 'wpdocs_remove_menusTwo');

BTW, als je een bepaalde gebruiker (in mijn geval beheerder met id=1) NIET KUNNEN om een menu te zien (gegenereerd door een plugin), zie de code hieronder (zie regel #3):

/* Hide plugin/theme/menu in the WordPress dashboard area */
function wpdocs_remove_menusTwo() {
    if (get_current_user_id() == 1) {
        remove_menu_page('activity_log_page'); //Activity Log WP Plugin
    }
}
 
add_action('admin_init', 'wpdocs_remove_menusTwo');
Deel: