Answers:
我找到了一个模块User Stats,该模块与Rules集成,并提供可用于数值比较的令牌,如[user:post-count]。希望这对其他人有帮助。
该用户统计模块只对D7一个开发版本(我假设这个问题是关于D7)。但是,您的问题似乎是Goals模块的完美用例(公开说明:我是该模块的维护者)。以下是使用目标的特定情况的可能配置。
导航到相对路径,admin/config/goals/manage
然后使用链接“添加目标”仅定义1个目标,并附带说明(例如):
发表X篇文章(核心论坛主题或/和回复)。
为实现目标 “的帖子(核心论坛主题和/或回复)的化妆X号”,定义一个或多个任务完成。
使用(配置)Goal的一种更高级的方法是配置任务,如下所示:
要跟踪单个用户完成某项任务的进度,您只需使用“ 规则”模块编写适当的规则,即可记录您的站点中发生的与各种任务的完成相关的事件。
对于上述作为示例的目标/任务,您只需要2条(极其基本的)规则,就可以像这样触发:
请注意,这两个规则可以重复使用,以衡量多个目标的进度(例如,如果您的目标具有“发布1条回复后”的任务,而第二个目标具有“发布10条回复后”的任务)。
此外,上述挑战作为挑战的示例非常简单(基本)。但实际上,您可以对可以想到通过“规则”模块进行跟踪的任何实体进行此操作。
用户完成特定于目标的所有任务后,该目标会自动标记为已完成。但是,还有更多:您还可以创建其他规则,当用户完成目标时,这些规则将被触发(规则事件)。这样,您的问题的答案就非常容易:执行“规则操作”以“ ...将用户更改为其他角色 ” ...这正是您的问题所在,不是吗?
代替上面的(无聊)目标描述,您可以使用目标描述,例如(例如)“ Participing User ”。哪个BTW可以很好地描述要授予的角色。
然后,如果您定义(说)另外3个(相似)目标,并且每个目标都有一组适当的任务要完成,则可以对目标(和/或角色)使用完全相同的技术,标记为类似(如果听起来很合理)熟悉Drupal.SE上的内容,这完全是偶然的):
有关“ 目标”模块的更多详细信息,请参阅我对“ 如何在Drupal网站中实施游戏化和奖励奖励? ”的回答。
注意:使用目标仅需要典型的管理任务(配置),尽管它确实带有各种钩子(用于自定义模块开发)(如果需要)。