Gravity Forms отправка данных ввода из нескольких форм третьим лицам после отправки определенной формы

Я не знаком с крючками гравитационной формы. Я создал 2 формы процесса регистрации, которые отображаются в одном модальном, но вызываются в разных divs. Я хотел отправить эти данные из 2-х форм в стороннее приложение, используя gform_after_submission отправить данные записи третьей стороне после отправки определенной формы (последняя форма).

делаю так:
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 ) );
}

позволит мне получить поля ввода только из указанного идентификатора формы.

Как бы возможно, я также получу записи из других форм, чтобы я мог включить и опубликовать его на сторонний url?

спасибо заранее.

2 ответов


поскольку вы указываете идентификатор формы в самом add_action, вы выполняете свою функцию только при отправке гравитационной формы с идентификатором 2. Если вы хотите запустить его для нескольких представлений, но затем ограничить его конкретными идентификаторами формы, то что-то вроде этого:

   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 ) );
    }
}

возможно, Вам придется использовать $form['id'] в случае, если вы не имеете дело с объектом. Один из них сработает. Недостатком является то, что вы должны знать идентификатор форм, с которыми хотите работать. Это легко найти в бэкэнде при просмотре таблицы форм, которые вы создали, но это то, что есть...


Если вы сохраняете данные формы в том же сообщении, возможно, вы можете получить дату на основе post id