0

在 Drupal 6 中为特定类型的每个节点构建联系表单的最佳方法是什么?我有一些“配置文件”类型的 CCK 节点,其中包含电子邮件地址作为字段。我想为每个节点提供一个带有联系表的视图,用户可以填写并使用他们自己的电子邮件地址作为回信地址发送(以便在异地进行进一步的联系)。

基本上,我只想通过我的网站完成初始电子邮件联系,当收件人回复时,它只会转到发件人填写联系表格时输入的地址。

您可能会问自己,为什么我不使用 Drupal 自带的个人联系表格。问题是我的机构部署他们的 Drupal 实例以使用本地 Kerberos 登录的方式,它在 Drupal 中创建的用户帐户没有电子邮件地址。他们只是获得一个带有用户名的基本骨架帐户。我真的不想强迫用户再次编辑他们的用户帐户信息,因为他们很可能不会这样做。

4

1 回答 1

0

与节点本身没有什么特别的关系,您需要的只是带有字段(从,到,主题,消息)的表单和此表单的自定义提交处理程序。您可以使用表单 API在自定义模块中实现所有这些,以创建表单并为其编写自定义提交。在这个提交中,您需要通过drupal_mail()发送电子邮件- 看看这个,它也提供了示例。主题可以帮助您处理表格。

然后,如果您需要将此表单放置在节点中,您可以执行以下操作:通过hook_nodeapi,在“查看”操作中,添加您之前创建的表单,您可以检查特定的 node_type 并使用现有的字段值(您提到带有电子邮件的 cck 字段)以预先填写表格。这样每次用户查看节点时,他都会看到这个表单。

作为您任务的逻辑继续,我建议查看菜单系统并为节点创建本地任务(选项卡),您将在其中显示电子邮件表单。

一般来说,仅此而已。当然还有其他实现方式,但是我认为这是最容易理解的方式。

问候, 斯拉瓦

于 2011-08-18T13:15:47.350 回答