0

Drupal 7:我需要一个模块来将联系表单附加到特定内容类型的节点。该表单应该是可配置的,并允许向节点作者发送带有附件的电子邮件。该表格还应该有一个验证码。电子邮件不得保存在数据库中。

这样的模块存在还是我需要开发它?

4

2 回答 2

1

您应该能够通过 webform 模块、CAPTCHA 模块和自定义模块的组合来实现这一点。

Webform 定义了它自己的 'webform' 内容类型,但它也允许您通过访问 'admin/config/content/webform' 并选择适当的内容类型来启用其他内容类型的 webform。

令牌模块提供节点令牌,例如 nid 和标题,它们可以作为隐藏的表单元素包含在内,但令人讨厌的是,它不包括作者作为令牌。

在您的网络表单的电子邮件选项卡上,可以选择一个表单组件作为将表单结果发送到的电子邮件地址。我将创建一个隐藏字段,将默认值留空,然后使用 hook_form_alter 在自定义模块中将节点作者值添加到它应该相当容易(可以通过查看源代码并查找隐藏输入来找到表单 ID 'form_id ')。然后,您可以在电子邮件选项卡中使用此表单组件将结果发送到。

我能看到的唯一导致问题的是,没有一种简单的方法可以停止 webform 在数据库中记录表单结果 - 我想这在自定义模块中是可以实现的,但没有太多麻烦。

于 2012-05-10T16:13:27.797 回答
1

是的,有这样一个模块。它被称为Webform。使用 Webform,您可以在具有预定义字段的特定节点类型下添加块表单,并直接向节点作者发送电子邮件。

  1. 下载并启用 Webform 4.x
  2. 创建新的,添加所需的字段
  3. 地址使用令牌的电子邮件选项卡下[current-page:node:author:mail]
  4. 表单设置选项卡中选中作为块可用
  5. 配置新启用的块(仅在某些节点类型下显示+将受限页面设置为node/*/*
  6. 做测试

您可以在此处找到打印屏幕和更详细的说明。

于 2015-09-04T14:39:43.137 回答