这是我的用法:
选票计算使用cron或其他模块完成。我没有绑定到任何特定模块(编写基本模块也没有问题)。我目前正在尝试我的运气规则,投票规则,五维斯特,显然,投票API。对于登录/注册角色和fbauth是使用,所以没有电子邮件验证是需要的。
在允许用户匿名创建内容的模块,如果用户注册,则将内容分配给他们。中也讨论了一个类似的问题,但是我的用例涉及投票和电子邮件免费注册。投票使事情变得更加复杂,而电子邮件注册(希望如此)更容易。
PS:我希望对具有plus1 (或类似)模块的不同节点遵循相同的工作流程,因此需要一种通用方法。
发布于 2013-12-17 17:57:20
您可以将匿名选票存储在cookie中,然后在登录/注册时,检查该cookie是否存在,并相应地进行投票。
user_cookie_save()保存用户试图在cookie中投票的实体的实体类型和实体ID。把它命名为pending_votes。同时,您可以触发您的模式登录窗口。用户当时可能不会登录/注册,也有可能在最终登录之前尝试对其他实体进行投票。因此,您可能希望将实体类型和ID存储为序列化数组。hook_user_login()连接用户登录,并检查是否存在pending_votes cookie。如果它在那里,使用它的内容和votingapi_set_votes()一起来投票。(之后删除pending_votes cookie,这样他们每次登录时就不会投更多的票)发布于 2013-12-21 02:36:27
懒惰注册是出于类似的原因而设计的,但我不确定它有多稳定。无论哪种方式,它都将为你提供一个良好的起点。
Lazy注册模块捕获匿名用户所做的操作,并将它们存储在临时用户帐户上,直到他们准备注册为止。
https://drupal.stackexchange.com/questions/97001
复制相似问题