0

我需要在 drupal 7 中使用 entityforms 创建的表单添加验证码。我找不到有关如何执行此操作的任何信息。谁能告诉我这是怎么做到的?

4

4 回答 4

1
  1. 安装模块https://drupal.org/project/captcha
  2. 转到实体形式。
  3. 在萤火虫视图表单源。并从字段中复制值:<input type="hidden" name="form_id" value="contact_entityform_edit_form">
  4. 从早期复制的值转到 /admin/config/people/captcha 和 FORM_ID。
于 2014-03-26T18:33:38.067 回答
1

试试这个模块,它会工作......

https://drupal.org/project/captcha

于 2013-10-11T07:03:16.880 回答
0

另一个有用的模块是Spamicide模块。

Spamicide 为每个表单添加一个输入字段,然后用 css 隐藏它,当垃圾邮件机器人填写该字段时,该表单被丢弃。

您可以在 Drupal 中的每个表单上打开此功能。

于 2013-10-11T09:12:09.740 回答
0

将验证码添加到 Drupal 中的Entityform 类型

  1. 安装或启用贡献的验证码模块。

  2. 确定您希望将 CAPTCHA 添加到哪些 Entityform 类型:

    管理 > 结构 > 实体形式类型
    admin/structure/entityform_types

  3. 从 Entityform Types 列表中,复制 Entityform Type 的机器名称(例如contact_us)。

  4. 配置验证码模块:

    管理员 > 配置 > 人员 > 验证码
    admin/config/people/captcha

  5. 在表单保护字段集中,添加实体表单类型的机器名称*作为表单 ID 值。

    *注意:Captcha 模块所期望的 Form ID 是 Entityform Type 机器名加上 text 字符串_entityform_edit_form

    例如,如果您的 Entityform Type 机器名称是contact_us,则完整的表单 ID 将是contact_us_entityform_edit_form

    您可以通过查看 Entityform 类型的 HTML 源代码并交叉引用表单的 ID 属性来验证这一点:

    <form class="entityform" id="contact-us-entityform-edit-form" ...>

    请记住,实际值已将连字符替换为下划线,这在 Drupal 中很常见。

  6. 选择适当的挑战类型或使用默认值。

  7. 保存验证码配置更改。

要验证 CAPTCHA 是否已成功添加,请打开私人浏览会话(例如 Chrome 隐身窗口)并查看 Entityform 类型,或者在退出 Drupal 时查看表单。

于 2016-07-27T18:35:33.670 回答