Para un proyecto WordPress me gustaría ocultar (eliminar) un menú en particular (o menús en el futuro) en el área del tablero de WP (el área de administración);
Por ejemplo: Menú Mensajes;
¿Cómo puedo hacerlo?
Preferiría usar algún código PHP como function ya que tengo child theme y puedo modilficar el archivo functions.php para ello.
Gracias
P.d. Abajo hay una captura de pantalla del menú wordpress que quiero ocultar:

En el tema WordPress de su hijo, en el archivo functions.php añada el siguiente código:
/* 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');
He utilizado el admin_menu Gancho WordPress (línea #16);
En tu caso puedes ver el código en la línea #4 - para el menú Posts.
También puede ver este enlace
Para los menús NO relacionadas con el núcleo WordPress (Páginas, Mensajes, etc.) también puede utilizar el botón admin_init (en la línea 8 de abajo) gancho;
En ese caso debes escribir la carpeta o el archivo del plugin o del tema;
Ver la captura de pantalla de lo que quiero decir (ver la línea 4 para el plugin Yoast WP):

Aquí me escondo:
- Menú del tema Divi
- Menú WP Yoast SEO
- Plugin de registro de actividad
Este es el ejemplo (ver los comentarios en el código a continuación):
/* 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, si quieres que un usuario en particular (en mi caso administrador con id=1) NO PODER para ver un menú (generado por un plugin), véase el código siguiente (véase la línea #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');
