Contact Form 7 允许您在联系表单中插入CAPTCHA,以防止机器人提交表单。Contact Form 7 使用Really Simple CAPTCHA作为其官方认可的 CAPTCHA 模块,因此您需要在表单中使用 CAPTCHA 之前安装 Really Simple CAPTCHA 插件。
本文的其余部分将解释如何将 CAPTCHA 与 Contact Form 7 结合使用,前提是您已经安装了 Really Simple CAPTCHA。
使用插件【Really Simple CAPTCHA】之前
Really Simple CAPTCHA 要求在您的服务器上安装GD 和 FreeType PHP 库,以便创建 CAPTCHA 图像。如果您不确定是否安装了这些库,请咨询您的服务器管理员。(一般使用宝塔面板会自动开启这些库)
Contact Form 7 会创建一个临时文件夹并将所有 CAPTCHA 文件存储在那里。在大多数情况下,临时文件夹的位置是wp-content/uploads/wpcf7_captcha,但根据您的设置可能会有所不同。(如果上传网站到宝塔面板上,不再修改任何权限的情况下,该文件夹会在插件安装完成后自动生成。)
此文件夹会自动创建,但有时会失败。可能的原因是父文件夹没有足够的写入权限。在这种情况下,您可以更改权限或手动创建文件夹。
如何使用插件【Really Simple CAPTCHA】
要将 CAPTCHA 添加到您的联系表单中,您必须使用表单captchac
标签captchar
。
captchac
表示 CAPTCHA-Challenge,它代表<img>
CAPTCHA 图像的一个元素。captchar
表示 CAPTCHA-Response,它代表<input type="text">
响应输入字段的一个元素。
标签必须始终与同名的标签captchac
配对。例如,下面显示的标签是有效的:captchar
[captchac captcha-1] [captchar captcha-1]
//captcha-1可以使用其他名称代替,例如:captcha-tmc,但是前后两个captcha-1必须是一致的
错误示范:但这些是无效的,因为它们的名称不同。在这种情况下,CAPTCHA 及其响应不匹配:
[captchac captcha-2] [captchar captcha-3]
插件【Really Simple CAPTCHA】更多功能
captchac
表示 CAPTCHA-Challenge,它代表一个 CAPTCHA 图像(<img>
HTML 格式)。
选项 | 例子 | 描述 |
---|---|---|
id: (ID) | id:foo | id 元素的属性值img 。 |
class: (类) | class:bar | class 元素的属性值img 。要设置两个或多个类,可以使用多个class: 选项,例如[captchac your-captcha class:y2008 class:m01 class:d01] 。 |
size: (大小) | size:s | 图像尺寸。仅提供size:s (60×20)、size:m (72×24) 和(84×28)。size:l |
fg:# (十六进制) | fg:#ff0000 | 图像的前景色。在 后面放置十六进制格式的 RGB 颜色代码fg:# 。 |
bg:# (十六进制) | bg:#00ffff | 图片的背景颜色。在 后面输入十六进制格式的 RGB 颜色代码bg:# 。 |
例子:
[captchac your-captcha size:s fg:#ffffff bg:#000000]
CAPTCHA 响应(表单样式)
captchar
表示 CAPTCHA-Response,它代表响应输入字段(<input type="text">
以 HTML 形式)。
选项 | 例子 | 描述 |
---|---|---|
id: (ID) | id:foo | id 元素的属性值input 。 |
class: (类) | class:bar | class 元素的属性值input 。要设置两个或多个类,可以使用多个class: 选项,例如[captchar your-captcha class:y2008 class:m01 class:d01] 。 |
例子:
[captchar your-captcha]
演示
注意:这是一个演示。此表单实际上并不发送邮件。
1) Default
Input this code: [captchac captcha-1]
2) Small size, inverted
Input this code: [captchac captcha-778 size:s fg:#ffffff bg:#000000]
[captchar captcha-778 4/4]
3) Large size, green text
Input this code: [captchac captcha-118 size:l fg:#00ff00 bg:#ffffff]
[captchar captcha-118 4/4]
[submit "Send"]
[编辑:2015-09-17] Contact Form 7 4.3 及更高版本推荐使用reCAPTCHA代替 Really Simple CAPTCHA。(国内暂时不支持)【但是有国内解决方案】