禁用垃圾邮件过滤器联系表 7

问题描述 投票:0回答:4

我正在开发的网站上有一份联系表。我们正在使用联系表 7,但我遇到了障碍。他们使用该表格来注册营员,单个用户可能会填写 3 或 4 次表格,其中几条信息与已上传的信息相同。

垃圾邮件过滤器经常将表单标记为垃圾邮件,我的客户希望我完全禁用垃圾邮件过滤器。

我该怎么做?我已经删除了 akismet,我正在使用 Re-Captcha 作为验证人员的系统,它仍然会阻止表单作为垃圾邮件。

如有任何帮助,我们将不胜感激。

wordpress contact-form-7 spam-prevention
4个回答
5
投票

我在开发时遇到了同样的问题。 为了解决这个问题,我将以下代码添加到主题目录中的functions.php文件中:

    add_filter('wpcf7_spam', function() { return false; });

wpcf7_spam - Form 7 挂钩,允许您更改垃圾邮件检查结果。 将此代码留在生产中可能不是一个好主意:)


1
投票

WordPress 默认配置 -> 讨论 正在将禁止使用的单词列表应用于 CF7 表单。

要解决此问题,请尝试将此代码片段添加到主题的functions.php 文件中:

/**
 * CONTACT FORM 7
 * Disable WP Disallowed List for SPAM validation
 */
add_filter( 'wpcf7_submission_has_disallowed_words', '__return_false', 10, 2 );

它对我有用。


0
投票

WPCF7_Submission
类具有
private function spam()
,该方法检查数据中是否存在垃圾邮件。如果我们看一下它,我们会看到跳过它的正确方法:

add_filter( 'wpcf7_skip_spam_check', '__return_true', 20, 2 );

请注意,有 3 个过滤器,每个过滤器都会检查垃圾邮件:

add_filter( 'wpcf7_spam', 'wpcf7_recaptcha_verify_response', 9, 2 );
add_filter( 'wpcf7_spam', 'wpcf7_akismet', 10, 2 );
add_filter( 'wpcf7_spam', 'wpcf7_disallowed_list', 10, 2 );

因此,您可以禁用部分垃圾邮件检查功能。


-1
投票

联系表格 7 上没有过滤器。可能是,您正在使用外部插件进行垃圾邮件控制,例如

Honeypot
或您的主机/服务器使其成为垃圾邮件。可能是,您的托管/服务器将电子邮件标记为垃圾邮件。因此,请禁用您主机的任何垃圾邮件过滤器或与您的主机管理员联系。

© www.soinside.com 2019 - 2024. All rights reserved.