ご注意!

この記事には PHP コードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

エントリーIDをMailchimpに送信する

エントリーIDをMailchimpに送信しますか?これは、エントリーID番号を検索するだけで、ニュースレターに登録した特定のユーザーを簡単に追跡および検索する方法です。

このチュートリアルでは、ユーザーがフォームを完了したときに、このID番号をMailchimpに送信する方法の各ステップを説明します。


Mailchimpでのカスタムフィールドの作成

まず、このID番号を保存するためのカスタムフィールドをMailchimpに作成する必要があります。これを行うには、Mailchimpのガイドのステップに従ってください

このフォームでは、メールアドレス、およびシンプルなテキストフィールドを持つMailchimp内のフォームを作成しました。

このフィールドの設定では、フィールドラベルエントリーIDフィールドタグENTRY_IDとします。

フィールドをフォームに保存すると、すべての連絡先ページにこのフィールドの列が表示されます。ここに、フォームが送信されたときにエントリーIDが保存されます。

カスタムフィールドをMailchimpフォームに追加する

フォームの作成

これを行うには、新しいフォームを作成するか、既存のフォームを編集してフォームビルダーにアクセスします。フォームビルダーで、フォームに追加したいフィールドを追加します。例では、名前とメールフィールドをフォームに追加しました。

フォームの作成にヘルプが必要な場合は、このチュートリアルを参照してください

希望するフィールドでフォームを作成する

フォームとMailchimpの接続

注意:続行するには、サイトにMailchimpアドオンをインストールして設定する必要があります。詳細については、Mailchimpアドオンの設定に関するチュートリアルを参照してください。

次に、フォームをMailchimpアカウントに接続します。これを行うには、マーケティング » Mailchimpに移動し、新しい接続を追加ボタンをクリックします。

新しいMailchimp接続を追加

次に、アカウントを接続し、フォームの送信ごとに実行するアクションを指定します。

Mailchimp連携のためのフィールドマッピング

接続を設定し、フィールドをマッピングしたら、次のステップの準備ができました!

エントリーIDをMailchimpに送信するコードの追加

これで、フォームが処理され、サブスクライバーがMailchimpリストに追加されるときに、このIDを送信するスニペットを追加する時間です。

サイトにコードスニペットを追加する方法については、こちらのチュートリアルをご覧ください

/** Send through entry ID from WPForms to Mailchimp
 *
 *  @link   https://wpforms.com/developers/how-to-send-the-entry-id-through-to-mailchimp/
**/

function wpf_dev_mailchimp_provider_process_action_subscribe_request_data( $data, $fields, $form_data, $entry_id ) {

    if ( empty( $entry_id ) ) {
      return $data;
    }

    // Change 'ENTRY_ID' to match the custom field you've created inside Mailchimp. See this doc for more details
    $data[ 'merge_fields' ][ 'ENTRY_ID' ] = absint( $entry_id );

    return $data;

}

add_action( 'wpforms_mailchimp_provider_process_action_subscribe_request_data', 'wpf_dev_mailchimp_provider_process_action_subscribe_request_data', 10, 4 );

カスタムフィールドの名前を上記の指示どおりにENTRY_IDにしなかった場合は、このコードスニペットを、$data[‘merge_fields’][‘ENTER_CUSTOM_FIELD_NAME_HERE’]の行内の名前に一致するように必ず更新してください。

これで、ユーザーがフォームを完了し、サブスクライバーを表示すると、連絡先リストにエントリーID番号が表示されます。

これでエントリーIDがMailchimpに渡されます

これで完了です!フォームのエントリーIDをMailchimpに送信する方法を学びました。

次に、一意のIDのスマートタグを作成して、フォームの他の領域で使用できるようにしますか?各フォームエントリーの一意のIDを作成するに関する記事をご覧ください。