Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
editor menu

Permite administrar los menús a un usuario con rol Editor

Como sabrás, en WordPress existe una gestión de usuarios con diferentes niveles de permisos o capabilities.

Por defecto la gestión de menús desde el panel de administración de WordPress está restringida a usuarios con rol administrador. En algunos casos, te habrás encontrado con la necesidad o la petición de un cliente para que los usuarios con rol Editor puedan tener acceso a la gestión de menús.

Vamos a ver cómo dar permiso a los usuarios con rol Editor para gestionar los menús, con apenas unas líneas de código. Lo primero es asignarle la capability necesaria, que para este caso es edit_theme_options. Esta capability o permiso, da acceso a los usuarios que la tengan a:

 

Para asignar una capability a un rol determinado, utilizaremos el método add_cap() perteneciente al objeto WP_Role que nos devuelve la función get_role():

Simplemente obtenemos el rol editor, y le añadimos la capability edit_theme_options.

¡IMPORTANTE!

El método add_cap almacena en base de datos las capabilities que asignamos a los roles. Por lo tanto, es aconsejable utilizar esto una sóla vez. Una vez ejecutado este código puedes eliminarlo, o mejor, puedes utilizarlo para ejecutar en el hook de activacion de temas y plugins. Si el día de mañana quieres dar marcha atrás, utiliza el método remove_cap.

 

Elimina el resto de opciones del menú apariencia

Hasta aquí todo bien. Pero ahora un usuario con rol editor tiene acceso a todo el menú de apariencia. Veamos cómo darle acceso únicamente a la gestión de menús, capando el resto de opciones:

Como ves, actuamos sobre el hook admin_menu. Comprobamos que el rol actual no sea administrador, y lo que hacemos es eliminar las subpáginas del menú de Apariencia. De este modo, un usuario con rol editor sólo tendrá acceso a la edición de menús.

Puede que también te interese

WP-CLI Parte 1, instalación y primeros pasos
WP-CLI Parte 1, instalación y primeros pasos
1. Instalación y primeros pasos 2. Instalando WordPress y primeros pasos y configuraciones 3. Trabajando con posts 4. Trabajando con usuarios 5. Trabajando con la…
Cómo evitar la actualización de plugins concretos en WordPress
Cómo evitar la actualización de plugins concretos en WordPress
Si has hecho desarrollos a medida en WordPress seguramente te has encontrado en alguna ocasión con la siguiente situación: Te han pedido un desarrollo en…
Mejora la puntuación de Google PageSpeed Insights: Eliminar el CSS que bloquea la visualización del contenido de la mitad superior de la página
Mejora la puntuación de Google PageSpeed Insights: Eliminar el CSS que bloquea la visualización del contenido de la mitad superior de la página
1. Optimizar imágenes 2. Minificar CSS y JS 3. Especificar caché de navegador 4. Habilita la compresión 5. Reducir el tiempo de respuesta del servidor…
Cómo eliminar los Shortcodes huérfanos en WordPress
Cómo eliminar los Shortcodes huérfanos en WordPress
Los shortcodes son códigos cortos que habitualmente utilizamos en el editor de texto para obtener una funcionalidad avanzada en el contenido de nuestras entradas, páginas,…