我需要在drupal 7中使用entityforms创建的表单中添加验证码。我找不到有关如何执行此操作的任何信息。谁能告诉我这是怎么做到的?
答案 0 :(得分:1)
试试这个模块它会起作用......
答案 1 :(得分:1)
<input type="hidden" name="form_id" value="contact_entityform_edit_form">
答案 2 :(得分:0)
另一个有用的模块是Spamicide模块。
Spamicide为每个表单添加一个输入字段,然后用css隐藏它,当垃圾邮件机器人填写该字段时,表单将被丢弃。
您可以在Drupal中的每个表单上启用此功能。
答案 3 :(得分:0)
将一个CAPTCHA添加到Drupal中的Entityform Type:
安装或启用提交的Captcha模块。
确定要将CAPTCHA添加到的实体形式类型:
管理员&gt; <结构>实体形式类型
admin/structure/entityform_types
从实体形式类型列表中,复制实体形式类型的机器名称(例如contact_us
)。
配置验证码模块:
管理员&gt;配置&gt;人&gt; CAPTCHA
admin/config/people/captcha
在表单保护字段集中,将实体表单类型的计算机名* 添加为表单ID值。
*注意:Captcha模块预期的表单ID是附加了文本字符串
_entityform_edit_form
的Entityform Type计算机名称。例如,如果您的Entityform Type计算机名称为
contact_us
,则完整的表单ID将为contact_us_entityform_edit_form
。
您可以通过查看Entityform类型的HTML源并交叉引用表单的ID属性来验证这一点:
<form class="entityform" id="contact-us-entityform-edit-form" ...>
请记住,实际值的连字符替换为下划线,这在Drupal中很常见。
选择适当的挑战类型或使用默认值。
保存验证码配置更改。
要验证CAPTCHA是否已成功添加,请打开隐私浏览会话(例如Chrome Incognito窗口)并查看Entityform类型,或者只是在退出Drupal时查看表单。