J'aimerais que les nouveaux utilisateurs du blog aient un rôle personnalisé, plutôt que Abonné. Comment définir cela par programme? Je sais que cela peut être modifié depuis le backend.
la source
J'aimerais que les nouveaux utilisateurs du blog aient un rôle personnalisé, plutôt que Abonné. Comment définir cela par programme? Je sais que cela peut être modifié depuis le backend.
Cela permet aux plugins de détourner facilement le rôle par défaut lorsqu'ils sont actifs.
// 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
});
Je l'utilise pour m'assurer que certains plugins qui ont besoin de rôles d'abonné l'obtiennent indépendamment des tentatives de modification de l'administrateur :)
Cordialement .
Lorsqu'un nouvel utilisateur est créé via la wp_insert_user()
fonction, le rôle est défini avec la set_role()
méthode de la User
classe et est défini sur le rôle d'utilisateur par défaut.
Le rôle d'utilisateur par défaut est récupéré de la base de données get_option('default_role')
et peut être défini via le tableau de bord d'administration en allant dans Paramètres> Général> Nouveau rôle par défaut de l'utilisateur.
Si vous avez enregistré votre nouveau rôle (en utilisant add_role()
, il devrait être disponible à votre choix.
Alternativement, pour plus de contrôle, vous pouvez vous connecter aux actions user_register
ou profile_update
pour set_role
les appliquer de manière conditionnelle, ou comme vous le souhaitez.
Après avoir créé l'utilisateur à l'aide de
Créer l'objet utilisateur
Définissez ensuite le rôle
Vous pouvez remplacer le rôle «éditeur» par l'un des éléments suivants:
Administrateur
Éditeur
Auteur
Donateur
Abonné
la source
Mettez-le dans le Pluging ou functions.php de votre thème
la source