J'essaie d'ajouter un rôle d'utilisateur à un utilisateur qui est devenu membre d'un groupe. Le flux de travail est comme ceci:
- L'utilisateur demande à rejoindre le groupe.
- La demande est approuvée par l'administrateur du groupe.
- L'utilisateur est membre du groupe.
- L'utilisateur obtient un rôle supplémentaire.
J'ai essayé de créer une règle qui pourrait le faire, mais bien que tous les paramètres semblent corrects après avoir rejoint le groupe, l'utilisateur n'obtient pas le rôle supplémentaire. Voir ci-dessous une capture d'écran de mes paramètres de règle:
rules
organic-groups
rroose
la source
la source
Réponses:
Maintenant, votre règle s'exécute après que l'utilisateur a demandé à devenir membre. Mais vous devez l'exécuter après l'approbation de l'adhésion à l'OG.
J'ai préparé une règle qui ajoute le rôle «membre» après l'approbation de l'adhésion ou s'il a été ajouté par l'administrateur (auto-approuvé). Voici l'export (
4
c'est l'id de mon rôle drupal de «membre»):Capture d'écran:
Astuce: vous pouvez activer le débogage des règles (page
admin/config/workflow/rules/settings
) pour voir quand vos règles sont exécutées.la source
J'ai le même problème (c'est pourquoi j'ai commencé une prime).
Je l'ai résolu de cette façon.
J'ai ajouté une fonction à un module personnalisé. Vous pouvez simplement créer votre propre module en créant un nouveau dossier dans / sites / all / modules avec deux fichiers:
votrenom_module.info - >>
votrenom.module
Accédez ensuite à vos modules et activez "Fonctions personnalisées".
Assurez-vous que le code php personnalisé du module est activé.
Ensuite, au lieu d'une action, ajoutez l'utilisateur au rôle dans les règles, ajoutez: exécutez un code php personnalisé et entrez:
Cela ajoute l'utilisateur au rôle et arrête le script. Si vous n'arrêtez pas le script, le rôle n'est pas enregistré. Et j'avais besoin d'ajouter un module car
user_save
cela ne fonctionne pas lors de son exécutioncustom php code
.Donc, je sais que c'est très moche, mais ça marche pour moi.
la source
Quelle version d'OG utilisez-vous?
Il s'agit d'un bug connu qui a été corrigé avec Organic Group 2.4+ ( voir la page des bogues ).
Si vous utilisez déjà une version 2.3 ou inférieure d'OG, la mise à jour devrait être simple. Si vous exécutez OG 1.x, vous pouvez trouver plus de détails sur le processus de mise à jour de OG 1.5 à 2.4+
la source