我可以在wordpress网站中使用Contact Form DB插件来保存和显示数据,而无需发送电子邮件

时间:2013-03-01 17:44:37

标签: database wordpress wordpress-plugin customization contact-form-7

我想创建一个wordpress自定义插件,用于保存三个数据字段,以及每个项目的wp-admin区域的相同图像。它应该能够在页面中显示所有这些项目。 当我搜索插件时,我发现了Contact Form DB插件,它可以用作联系表单7插件扩展,用于保存通过它发送的数据。 http://wordpress.org/extend/plugins/contact-form-7-to-database-extension/

我可以在wordpress网站中使用Contact Form DB插件来保存和显示数据而不发送电子邮件吗?它还发送电子邮件,但我只想存储和显示数据。

另一个问题: - 我已经使用联系表格7插件中的联系表格发送电子邮件查询..以联系表格7保存数据的更改是否会影响其工作?

请帮我提供任何参考或解决方案,因为我是wordpress的新手,目前不了解插件开发。 任何帮助将不胜感激.. 提前谢谢。

3 个答案:

答案 0 :(得分:2)

您可以使用wpcf7_before_send_mail操作挂钩来阻止表单发送到电子邮件.. (我已使用" Contact Form DB"插件进行了测试 - 它会在过滤电子邮件之前保存数据)

要仅过滤特定的表单ID - 请使用以下内容:

function wpcf7_skip_email_sending($wpcf7_data)
{
    if ( in_array($wpcf7_data->id(), array(2,3,7)) ) {
        $wpcf7_data->skip_mail = true;
    }
}
add_action("wpcf7_before_send_mail", "wpcf7_skip_email_sending");

(对于较旧的CF7版本,您可能需要将$wpcf7_data->id()更改为$wpcf7_data->id

答案 1 :(得分:1)

如果您设置了联系表单7并输入垃圾邮件或非邮件地址以将邮件发送到联系表单7,它仍将记录通过联系表单DB发送的邮件

因此,在短代码模板中向junk@yourdomain.com发送消息,并且每当用户提交消息时,它将尝试发送到该电子邮件,并仍然将该电子邮件记录为已发送。就个人而言,我实际上会创建该电子邮件地址,以便您的smtp不会因为从smtp服务器反弹而淹没。

答案 2 :(得分:0)

为避免发送电子邮件,甚至不触摸文件,最快的方法是在additional settings标签中添加

demo_mode: on

skip_mail: on

使用Contact Form DB都可以正常工作。区别在于demo_mode与Flamingo不兼容。