我正在为一个基于 drupal 的客户创建一个站点,该客户希望匿名用户(未登录)能够创建一个新节点,但只能创建一个未发布的节点。然后管理员可以在自己发布之前查看节点并更改它。
我已经研究过使用触发器和操作,但是编写自定义触发器模块似乎有点令人生畏,因为我目前对 Drupal API 不是很熟练。任何想法表示赞赏。
最佳答案
对于 Drupal 7,您可以通过这种方式应用@Mirzu 解决方案:
function <your-module-name>_node_presave($node) {
if (user_is_anonymous())
$node->status = FALSE; // means unpublished
}
当然你也可以反过来做:
将内容类型定义为未发布,然后在 Hook 中为经过身份验证的用户将其设置为已发布。
关于php - 允许匿名用户在 Drupal 中创建未发布的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4771079/