Me gustaría que los nuevos usuarios del blog tengan un rol personalizado, en lugar de suscriptor. ¿Cómo configuro esto mediante programación? Sé que se puede cambiar desde el backend.
fuente
Me gustaría que los nuevos usuarios del blog tengan un rol personalizado, en lugar de suscriptor. ¿Cómo configuro esto mediante programación? Sé que se puede cambiar desde el backend.
Esto permite que los complementos secuestran fácilmente la función predeterminada mientras están activos.
// Hijack the option, the role will follow!
add_filter('pre_option_default_role', function($default_role){
// You can also add conditional tags here and return whatever
return 'subscriber'; // This is changed
return $default_role; // This allows default
});
Lo uso para asegurarme de que algunos complementos que necesitan roles de suscriptor lo obtengan independientemente de los intentos del administrador de cambiar :)
Saludos .
Cuando se crea un nuevo usuario a través de la wp_insert_user()
función, el rol se establece con el set_role()
método de la User
clase y se establece en el rol de usuario predeterminado.
El rol de usuario predeterminado se recupera de la base de datos get_option('default_role')
y se puede establecer a través del Panel de administración yendo a Configuración> General> Nuevo rol predeterminado de usuario.
Si ha registrado su nuevo rol (usando add_role()
, debería estar disponible allí para elegir.
Alternativamente, para un mayor control, puede engancharse a las acciones user_register
o profile_update
para luego set_role
condicionalmente, o como más le guste.
Después de crear el usuario usando
Crea el objeto de usuario
Luego establece el papel
Puede reemplazar el rol de 'editor' con cualquiera de los siguientes:
Administrador
Editor
Autor
Contribuyente
Abonado
fuente
Póngalo en Pluging o functions.php de su tema
fuente