No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Creación y Gestión de Roles de Usuario en WordPress

10/13
Recursos

¿Qué son los roles de usuarios en WordPress?

En WordPress, los roles de usuarios nos permiten administrar y segmentar los permisos que tienen los usuarios dentro de un sitio web. Por defecto, WordPress incluye roles como administrador, editor, autor, colaborador y suscriptor. Cada uno de estos roles tiene permisos específicos que dictan lo que pueden y no pueden hacer en el sitio. Por ejemplo, un suscriptor solo puede leer posts, mientras que un administrador tiene control total sobre el sitio.

¿Cómo crear un nuevo rol de usuario?

Existen ocasiones en las que necesitamos personalizar más allá de los roles predeterminados. WordPress nos permite crear nuevos roles a través del uso de plugins y programación. Vamos a crear un rol llamado "cliente" para un catálogo de productos utilizando código en el archivo principal del plugin de frontend.

¿Qué pasos seguir para definir un rol al activar un plugin?

  1. Escribir la función de activación: Vamos a crear una función llamada plzPluginActivar, que utilizará la función addRole de WordPress para añadir el nuevo rol "cliente". A este rol le asignaremos permisos específicos, como la capacidad de leer posts.

    function plzPluginActivar() {
        add_role(
            'cliente',
            'Cliente',
            array(
                'read' => true, // Permiso básico
            )
        );
    }
    
  2. Registrar el hook de activación: Utilizamos register_activation_hook para que nuestra función se ejecute al activar el plugin. Esto asegura que se agregue a la base de datos de WordPress.

    register_activation_hook(__FILE__, 'plzPluginActivar');
    

¿Cómo asegurar que el rol se elimina al desactivar el plugin?

  1. Definir la función de desactivación: Crearemos una función llamada plzPluginDesactivar, utilizando removeRole para eliminar el rol "cliente" de la base de datos.

    function plzPluginDesactivar() {
        remove_role('cliente');
    }
    
  2. Registrar el hook de desactivación: A través de register_deactivation_hook, vinculamos nuestra función para que se ejecute cuando el plugin se desactiva.

    register_deactivation_hook(__FILE__, 'plzPluginDesactivar');
    

Estos procesos son fundamentales para administrar roles personalizados dentro de WordPress a través de plugins. Siempre debemos verificar que al activar y desactivar nuestros plugins, los roles funcionen como se espera.

¿Cómo verificar que nuestro rol se ha añadido o eliminado correctamente?

Para comprobar que el rol "cliente" se ha añadido con éxito, puedes revisar la sección de administración de usuarios en WordPress. Después de activar el plugin, debería aparecer la opción de asignar el rol "cliente" al añadir o modificar usuarios.

Si deseas verificar que funcione la eliminación al desactivar, desactiva el plugin y revisa nuevamente si el rol "cliente" desaparece de las opciones disponibles en la administración de usuarios.

¡Anímate a seguir explorando el poder de WordPress y sus plugins para personalizar tu sitio! La programación de roles es solo el comienzo de lo que puedes lograr.

Aportes 2

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

La info de esta clase, combinada con un plugin como Ultimate Member puede ser de mucha ayuda 😃

##Crear Rol de usuario
Crear roles de usuario teniendo en cuenta su eliminación al desactivar el plugin

function plz_plugin_activar(){
		//read_post es el permiso básico (Leer documentación)
    add_role('cliente',"cliente","read_post");
}

function plz_plugin_desactivar(){
    remove_role('cliente');
}

register_activation_hook(__FILE__,"plz_plugin_activar");
register_deactivation_hook(__FILE__,"plz_plugin_desactivar");