请联系Wordpress中的表格7-如何隐藏电子邮件中的空白字段?

时间:2019-07-08 04:52:42

标签: wordpress email field contact-form contact-form-7

此问题与我的问题相似,但这没有解决问题的答案 Contact Form 7 in Wordpress - How can I hide incompleted fields in the e-mail?

我只想从没有给出值的电子邮件中删除这些行

1 个答案:

答案 0 :(得分:0)

如果您使用的是单个表单或具有相似字段集的多个表单,则可以在联系表单设置中将Message body留空,然后将此函数添加到functions.php

add_filter( 'wpcf7_mail_components', 'add_extra_details', 50, 2 );
function add_extra_details($mail_params, $form = null) {
    $fields = $_POST;
    $keys_to_include = array(
        'your-name' => 'Name',
        'your-email' => 'Email',
        'your-subject' => 'Subject'
    );

    foreach ($fields as $k => $v) {

        if (array_key_exists($k, $keys_to_include)) {
            $mail_params['body'] .= '<br />'.$keys_to_include[$k].': '.$v;
        }
    }

    return $mail_params;
} 

只需根据您在表单中的字段映射$keys_to_include,如果您只想对某些表单执行此操作,则可以将所有内容包装起来以首先检查表单ID(联系表单中有很多隐藏字段使用它们)