2

クライアントの WordPress Web サイトの functions.php ファイルで gform_after_submission フックを使用して、この文字列の情報をサード パーティの API に送信しようとしています (この URL はサード パーティのクライアントから提供されたものであり、登録ごとに一致させる必要があります)。 ): https://thirdpartywebsite.com/api_addNewProfile.php?gid=yourGroupID&fn=John&mi=E&ln=Doe&un=john@email.com&p=testpw&g=男性

これは、functions.php ファイルで設定したものです。

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

    $post_url = 'https://thirdpartywebsite.com/api_addNewProfile.php';
    $body = array(
        'gid' => "yourGroupID",
        'fn' => $entry['1.3'],
        'mi' => "",
        'ln' => $entry['1.6'],
        'un' => $entry['2'],
        'p' => "test",
        'g' => $entry['3']
    );

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

私は GF User Registration アドオンを使用しているので、新しいメンバーがクライアントの Web サイトに登録するときに、プロファイル ページにログインするためのユーザー名とパスワードを設定すると、まったく同じものでサードパーティのオンライン アプリケーションにログインできるはずです。登録フォームで設定したユーザー名とパスワード。

参考のため:

  • fn = 名
  • mi = ミドル ネームのイニシャル (今のところ、ミドル ネームのイニシャルに空白を渡したいだけです)
  • ln = 姓
  • un = ユーザー名
  • p = パスワード (ここでは「test」に設定)
  • g = 性別

関連するユーザー情報を含む完全な URL を入力すると、すべてが問題なく機能し、オンライン アプリケーションにログインできます。Gravity Forms 登録フォームで配列を正しく投稿できませんでした。

皆さんが私を正しい道に導くことができれば、私はそれを大いに感謝します.

4

1 に答える 1

0

コード サンプルは、GET メソッドの代わりに POST http メソッドを使用していることを示しています。例に示すように URL を作成し、完全に作成された URL で WP_Http リクエストを実行することをお勧めします。または、最初に $request->get を試して、それが機能するかどうかを確認することもできます。

于 2013-10-11T19:34:40.170 に答える