I have a special content type named "example". I want to show new nodes of this type to anonymous users of my site.
What I need: after 1 week the node was created, content access permissions (Content Access module is installed) are changed that only users with particular role are able to see this node.
Should this be triggered on cron or what? Or just how to do something to nodes that are older than 1 week?
Could you provide some instructions on how to do that? Because I'm new to the Rules module and have no any ideas.
答案 0 :(得分:0)
您应该可以使用规则执行此操作(请参阅this question,不完全是您想要的但是关闭),但我会选择一个实现hook_cron的小型自定义模块,您可以在其中获取所有内容创建日期< (现在 - 1周),并修改每个权限。
它应该比我的第一个链接中解释的规则方法更有效,在第一个链接中,您需要遍历每个cron执行上的所有节点。规则可能比编写纯PHP更烦人。我更喜欢学习Drupal API而不是花费数小时点击规则界面(规则很棒,但很难)。
祝你好运答案 1 :(得分:0)
是的,您应该可以使用Rules模块来实现您的目标,但我建议您将其与Rules Once per Day和{{3模块,如下面进一步说明的那样。
你的问题并没有真正指明任何可以/应该被用作规则事件的东西(对于要触发的规则。即使它像“取决于你自己的想象”(任何规则事件都会做),某事这肯定会使用Views Rules模块。以下是它的工作原理(根据Rules Once per Day,来自模块所有者):
所以这是了解/阅读本文的另一种方式:
有关comment in issue 2495775模块的详细信息(来自其项目页面):
直接将视图作为规则操作和循环提供,以无缝地使用视图结果数据。
之前的引用可能看起来有些神秘(它可能会让你觉得“所以什么,这对我有什么帮助?”)。有关如何使用这些模块继续前进的更多细节:
简单,没有?