Eliminar elementos del menú de administración de Wordpress

Lun 16 Mar 2020 | Por: Javier Suarez

Puedes restringir los permisos de “Editor” y darle acceso solo a áreas especificas que no afecten el funcionamiento de la web.

Esto es lo que vamos a ver en este artículo, cómo ocultar fácilmente elementos del menú de la administración de Wordpress. 

Tabla de contenidos


Buscar las url que queremos eliminar

Para eliminar un elemento del menú de la administración de Wordpress, debes conocer la url de la página que deseas eliminar.

Todas las url dentro de la administración de Wordpress, comienzan con el nombre de tu dominio y después /wp-admin/.

https://wordpress.com/wp-admin/
https://wordpress.com/wp-admin/themes.php
https://wordpress.com/wp-admin/edit.php?post_type=page

La parte importante y la que utilizaremos es la que está después de /wp-admin/.

themes.php
edit.php?post_type=page

Agregar código a tu archivo functions.php

Edita el archivo functions.php de tu tema y pega el siguiente código

function remove_menu_items(){
   remove_menu_page( 'themes.php' );
   remove_submenu_page( 'plugins.php','plugin-install.php' );

add_action( 'admin_menu', 'remove_menu_items', 999 );
?>

Dentro de las comillas debes de agregar la página que quieres eliminar del menú.

Para eliminar un elemento superior del menú debes usar remove_menu_page().

Eliminar elemento en un submenú

Si deseas eliminar un elemento de un submenú, debes usar remove_submenu_page()

remove_submenu_page( 'plugins.php','plugin-install.php' );

Aquí el primer argumento debe ser la url de primer nivel en el menú o página de nivel superior, el segundo argumento debe ser la url del elemento a eliminar en el submenú.

En este caso, para eliminar el enlace de “Añadir Nuevo” plugin, que se encuentra en el menú Plugins, debemos pasar la url de plugins (‘plugins.php’) como primer argumento y la url de la página añadir nuevo (‘plugin-install.php’) como segundo argumento.

Eliminar elementos según rol del usuario

Para poder restringir los menús que ven los usuarios según su rol podemos usar current_user_can()

if ( current_user_can( 'colaborador' ) ) {
   remove_menu_page( 'themes.php' );
}

Puedes hacer varias comprobaciones, para que ciertos grupos de usuarios no accedan a una página específica.

if ( current_user_can( 'colaborador' ) || current_user_can( 'editor' ) ) {
   remove_menu_page( 'themes.php' );
}

Si no te quieres perder las proximas entradas suscríbete. Me encantaría que nos dejaras tus comentarios...


Déjanos un comentario


1 Comentarios

ingelm20 de Diciembre de 2020 a las 16:17

Saludos, actualmente trabajo en un proyecto cuya pagina tiene una galería de imágenes, dicha galería va a ser alimentada por el cliente final, por lo que debo concederle acceso a wp-admin, pero me gustaría que solo pueda cargar las imágenes y no tocar nada mas para evitar daños a la página, no se si existe algún plugin de galerias de imágenes con esas características, o tendré que hacer las modificaciones que mencionas acá.
Muchas Gracias.