【问题标题】:Wordpress Contact form 7 add_filter() not working?Wordpress 联系表格 7 add_filter() 不起作用?
【发布时间】:2015-03-24 06:38:28
【问题描述】:

似乎无法将 add_filter 用于 Contact Form 7。 最终,我尝试使用此处的代码添加自定义验证:http://code-tricks.com/contact-form-7-custom-validation-in-wordpress/

但是 add_filter 调用似乎并没有挂在它们应该挂在的位置,并且什么也没有发生。做一个简单的 ECHO 测试,我可以看到文件正在加载,但没有进行验证。

知道是什么原因造成的吗?

add_filter('wpcf7_validate_text','cf7_custom_form_validation', 10, 2); // text field
add_filter('wpcf7_validate_text*', 'cf7_custom_form_validation', 10, 2); // Req. text field

任何指定的 cf7_custom_form_validation() 函数在提交表单时根本不做任何事情。即使我只是让它回显一些文本或操纵变量。没发生什么事。该函数似乎没有被调用。

【问题讨论】:

    标签: wordpress validation plugins contact-form-7 add-filter


    【解决方案1】:

    事实证明 CF7 核心代码已更新,需要进行一些修改才能使自定义验证正常工作: 更多详情可在这找到: http://contactform7.com/2015/01/27/contact-form-7-41/ 和这里: http://contactform7.com/2015/01/06/contact-form-7

    如果一切顺利,我会试一试并将其标记为已回答。

    【讨论】:

    • 这就是答案。我只是不能再接受 23 小时。
    【解决方案2】:

    我认为在您的情况下 add_filter 没有问题。这可能是因为用于验证不正确的 id。检查验证码中的form id是否正确使用。

    【讨论】:

    • 我认为它不需要任何特殊的表单 ID。如果有,应该是什么?我完全按照指示进行操作。add_filter('wpcf7_validate_text*', 'my_wpcf7_validate_text', 10, 2);并且在 CF7 插件中:[text* fullName] .. 没有任何反应。
    • 您是否选中了写为必填字段的复选框?选中您要验证的所有字段的复选框。
    • 感谢您的帮助!原来这只是对我不知道的核心代码的更新。现在一切都好了。见我上面的回答。
    【解决方案3】:

    仅供参考,下一页上的说明目前是错误的 - https://contactform7.com/2015/03/28/custom-validation/

    以下代码$tag->name

    需要读取$tag[name],因为显然 $tag 现在是一个数组...

    【讨论】:

      猜你喜欢
      • 2019-05-24
      • 2014-10-04
      • 1970-01-01
      • 2021-06-02
      • 2017-01-23
      • 2016-07-17
      • 2020-05-30
      • 1970-01-01
      相关资源
      最近更新 更多