2015-09-16 14 views
7

Tôi không quen với móc hình thức trọng lực. Tôi đã tạo 2 biểu mẫu đăng ký được hiển thị theo một phương thức nhưng được gọi bằng các div khác nhau. Tôi muốn gửi các dữ liệu này từ 2 biểu mẫu đến ứng dụng của bên thứ ba bằng cách sử dụng gform_after_submission gửi dữ liệu nhập cho bên thứ ba sau khi gửi biểu mẫu cụ thể (biểu mẫu cuối cùng).Biểu mẫu trọng lực gửi dữ liệu nhập được kết hợp từ nhiều biểu mẫu cho bên thứ ba sau khi gửi biểu mẫu cụ thể

Tuy nhiên cách làm này:

add_action('gform_after_submission_2', 'post_to_third_party', 10, 2); 
    function post_to_third_party($entry, $form) { 

    $post_url = 'http://thirdparty.com'; 
    $body = array(
     'first_name' => rgar($entry, '1.3'), 
     'last_name' => rgar($entry, '1.6'), 
     'message' => rgar($entry, '3'), 
    ); 

    $request = new WP_Http(); 
    $response = $request->post($post_url, array('body' => $body)); 
} 

sẽ chỉ cho phép tôi để có được lĩnh vực nhập từ id hình thức quy định.

Làm cách nào tôi có thể nhận được các mục nhập từ các biểu mẫu khác để tôi có thể đưa vào và đăng nó lên url của bên thứ ba?

Xin cảm ơn trước.

+0

Bạn cần biết ID mục nhập để có thể tìm nạp chúng qua GFAPI :: get_entry ($ entry_id). – David

+0

có nhận được các mục từ các biểu mẫu khác không? –

+0

Có. Nó sẽ nhận bất kỳ mục nhập nào từ bất kỳ biểu mẫu nào nếu bạn biết ID mục nhập. – David

Trả lời

1

Bởi vì bạn đang xác định ID dạng trong add_action chính nó, bạn chỉ chạy chức năng của bạn khi Form Trọng lực , với ID là 2, được gửi. Nếu bạn muốn nó chạy cho nhiều đệ trình, nhưng sau đó hạn chế nó để ID hình thức cụ thể, sau đó một cái gì đó như thế này:

add_action('gform_after_submission', 'post_to_third_party', 10, 2); 
    function post_to_third_party($entry, $form) { 

    if($form->id == 2 || $form->id == somenumber) { 
     $post_url = 'http://thirdparty.com'; 
     $body = array(
      'first_name' => rgar($entry, '1.3'), 
      'last_name' => rgar($entry, '1.6'), 
      'message' => rgar($entry, '3'), 
     ); 

     $request = new WP_Http(); 
     $response = $request->post($post_url, array('body' => $body)); 
    } 
} 

Bạn có thể cần phải sử dụng $form['id'] trong trường hợp bạn đang phải đối phó với các đối tượng. Một trong số họ sẽ làm việc. Nhược điểm là bạn phải biết ID của các biểu mẫu mà bạn muốn làm việc. Điều này có thể dễ dàng tìm thấy trong phần phụ trợ khi xem bảng biểu mẫu mà bạn đã tạo, nhưng nó là gì ...

0

Nếu bạn đang lưu biểu mẫu dữ liệu vào cùng một bài có thể bạn có thể nhận được cập nhật dựa trên bài id

Các vấn đề liên quan