Читать книгу El gran libro de desarrollo de plugins WordPress - Jhon Jairo Rincón Cardona - Страница 15
Comprobación de las capacidades de usuario
ОглавлениеLas capacidades de usuario son las funciones que se pueden realizar dependiendo del rol que tenga la persona dentro de la web. Los roles que puede desempeñar una persona dentro de un proyecto web son:
• Super Admin
• Administrator
• Editor
• Author
• Contributor
• Subscriber
A continuación, mostraremos como ejemplo algunas de las funciones que se pueden realizar con el rol de Super Admin:
• create_sites
• delete_sites
• manage_network
• manage_sites
• manage_network_users
• manage_network_plugins
• manage_network_themes
• manage_network_options
• upload_plugins
• upload_themes
Son muchas más las funciones. Acto seguido, pondremos una tabla con las funciones y los roles que pueden desempeñar dichas funciones.
Para conceder el permiso a un usuario según su rol o mostrarle según qué funciones, podemos utilizar la siguiente función:
current_user_can( string $capability, mixed $args )
También podemos escribir un condicional para ejecutar alguna acción, por ejemplo:
Ahora crearemos un ejemplo, añadiremos una función donde aquel usuario con permisos para editar paginas podrá ver la modificación que añadiremos al head de nuestro WordPress:
Esta función nos puede dar un error Undefined function wp_get_current_user(). Este error se debe a que, durante el proceso de carga, WordPress carga primero todos los archivos y plugins, por último comprueba las capacidades de usuario, por eso nos marca el error de que no está definido.
Para solventar este error, debemos crear una función con el gancho de acción ‘plugins_loaded’; así quedaría el código.
Si vamos a nuestro frontend y comprobamos desde la consola nuestro head, veremos los cambios realizados.