2016-12-12 197 views
0

我正在使用Contact Form 7插件为用户生成基于提交的(通过表单)和服务器提供的数据的pdf。Contactform7将服务器值传递给javascript

我想在提交后显示“预览”,所以我需要将自定义字段传递给客户端,以便让他们在某些js文件中。

这是我有:

插件渲染PDF:

<?php 

add_action('wpcf7_before_send_mail', 'generate_pdf'); 
function generate_pdf($wpcf7) { 

    $file_uri = 'fpdf/fpdf.php'; 
    require_once($file_uri); 

    /* PDF file initialization */ 
    $pdf = new FPDF(); 
    $pdf->AddPage(); 
    $pdf->AliasNbPages(); 
    $pdf->SetFont('Arial','B',12); 
    $today_date = "California, " . date("d F Y"); 
    $pdf->Cell(0, 10, $today_date, 0, 1, 'R'); 
    $name = $data['your-name']; 
    $submission = WPCF7_Submission::get_instance(); 
    $data = $submission->get_posted_data(); 

    $pdf->Output(wp_upload_dir()['basedir'] . '/' . $name . '.pdf', 'F'); 
    $wpcf7['custom_field'] = 'CUSTOM VALUE'; 
    return $wpcf7; 
} 
?> 

呼吁形式的JavaScript文件递交:

$('.wpcf7-submit').on('click', function (e) { 
     var data = $('form').serializeArray(); 
     var cleaned_data = {}; 
     for (item in data) { 
      var name = data[item]['name']; 
      if (name[0] != '_'){ 
       cleaned_data[name] = data[item]['value']; 
      } 
     } 
     var testInput = cleaned_data["your-name"]; 


})(jQuery); 

在这最后的代码,我想获得由PHP脚本传递的值,但我不知道该怎么做。

回答

0

假设PDF生成函数在functions.php中,并且您已将js排入队列,那么您要做的就是本地化。你可以在这里阅读更多关于它的信息:Localize scripts

相关问题