「WordPressのコンタクトフォームで問い合わせ完了した顧客情報をSalesforceに同期できたらうれしいな。。。」
これをやるにはプログラミングで解決できますが、プログラミングは開発工数や費用が難しくてプラグインで完結できたら嬉しいですね。
そこで今回は、定番コンタクトフォームを連携プラグイン「Contact Form 7(CF7)」によって、Salesforce側での複雑なアプリ作成を一切行うことなく、ボタンひとつでAPI連携を完了させたいと思います。
本記事では、実務の検証で判明したプラグインの仕様と、プラグインで完結させる場合の注意点や具体的なノウハウを分かりやすく解説します。
プラグイン「CF7 Salesforce」の仕様
WordPressと外部システムをAPI連携させる場合、通常は送信元と受信元の双方で「認証キー(鍵)」を発行して連携します。Salesforceの場合は設定から「外部クライアントアプリケーションマネージャー」を作成して、OAuth認証という手順が必要になります。
しかし、今回使用するプラグイン「Integration for Salesforce and Contact Form 7(通称:CF7 Salesforce)」は、手間を大きく省くことができます。。
このプラグインは、プラグインの開発元があらかじめSalesforce側に「共通の認証アプリケーション(コネクター)」を用意してくれている点にあります。
標準設定のまま連携を進めると、プラグインが私たちのWordPressサイトとSalesforceの間に立ち、裏方として認証を仲介してくれます。そのため、私たちが自前で難解な暗号鍵を発行したり、Salesforceのセキュリティ設定と格闘する必要がありません。
【実証】コンシューマーキ鍵不要!ボタンひとつで繋がる仕組み
実際にプラグインの設定画面を開き、連携ボタン(Login with Salesforce)をクリックすると、一瞬でSalesforceのログイン・承認画面へとリダイレクトされます。以下の画面にあるように、ボタンをクリックするとアカウント認証が始まります。
Use Own Salesforce Appにチェックを入れない限り、コンシューマーキーや秘密を入力する欄すら表示されません。 Salesforceのアカウント情報でログインして「アクセスを許可」するだけで、文字通りワンクリックで安全なAPI連携が完了してします。
この「開発元の鍵をスマートに借りる」仕組みのおかげで、プログラミングやインフラの知識がないWeb担当者でも、数分でSalesforceとの通信経路を確立することができます。
簡単!WordPressとSalesforceをワンクリックで連携する3ステップ
Salesforce側の面倒なアプリ設定が不要なことが分かったところで、ここからは実際にWordPressの管理画面を操作して連携を完了させる手順を解説します。
作業は驚くほどシンプルで、大きく分けて以下の3ステップで完了します。
ステップ1:プラグインのインストールとアカウント認証
- WordPressの管理画面から「プラグイン」>「新規追加」を開き、「Integration for Salesforce and Contact Form 7」を検索してインストール・有効化します。
- 有効化すると、管理画面の左メニューに「Salesforce」という項目が追加されるので、それをクリックして「Salesforce Accounts」タブを開きます。
- 「Add New Account」ボタンをクリックし、任意の「Account Name(例:本番環境など)」を入力します。Environment(接続環境)はテスト用環境なら
Sandbox、本番用環境ならProductionを選択します。今回はIntegrationMethodをAPIにチェック入れておきます。ここまで入力したら「Login with Salesforce」をクリックして、Salesforceアカウントと連携します。 - 接続環境(Environment)は、テスト用環境なら
Sandbox、本番用環境ならProductionを選択します。 - 「Integration Method」で
APIにチェックが入っていることを確認したら、そのまま画面を下へスクロールします。
ステップ2:Salesforce側でのアクセス許可(承認)
- 設定項目を確認したら、青い「Login with Salesforce」ボタンをクリックします。クリックすると自動的にSalesforceのログイン画面へリダイレクトされるので、連携させたいSalesforceアカウントのユーザー名とパスワードを入力してログインします。
- ログイン後、「WordPress(プラグイン)へのアクセスを許可しますか?」という確認画面(承認画面)が表示されます。内容を確認し、「許可(Allow)」ボタンをクリックします。
- 自動的にWordPressの管理画面へと戻り、ステータスに「Authorized Connection(緑色のチェックマーク)」が表示されれば、API連携は見事に成功です!
ステップ3:Contact Form 7の項目とSalesforce項目のマッピング(紐付け)
通信が繋がったら、最後に「フォームのどの入力欄」を「Salesforceのどの項目」に登録するかを紐付けます。
- プラグインメニューの「Salesforce Feeds」タブを開き、「Add New Feed」をクリックします。
- 連携したい「Contact Form 7のフォーム」と、登録先となるSalesforceの「オブジェクト(例:
Lead(リード)など)」を選択します。 - すると、画面下部に「Map Fields(項目のマッピング)」セクションが出現します。
- 「Salesforce側の項目(Last Name、Emailなど)」に対し、対になる「Contact Form 7のタグ(
[your-name]、[your-email]など)」をドロップダウンメニューから1つずつ選んで紐付けます。 - 最後に画面最下部の「Save Feed」をクリックして保存すれば、すべての設定が完了です。
無料版の落とし穴と「有料プラン(有料の壁)」への対策
ボタンひとつでAPI連携ができる非常に便利な「CF7 Salesforce」プラグインですが、実務で運用するにあたっては、見落としがちな「無料版の限界(有料の壁)」が存在します。
特に、企業のWebサイト構築において「追加の有料プラグインの購入は予算的に許可されていない」というケースは少なくありません。ここでは、無料版でできることの限界と、その壁にぶつかった際の現実的な対策を整理します。
CF7 Salesforce無料版の機能制限と導入時の注意点
プラグインの無料版は、あくまで「標準的なフォームを素早く連携する」ための機能に絞られています。導入前に必ず以下の制限項目をチェックしておきましょう。
- 無料版でできること(標準機能):
- お名前(姓・名)、メールアドレス、電話番号、会社名、本文など、Salesforceに最初から用意されている「標準項目(Standard Fields)」へのデータ登録。
- 「リード(見込み客)」や「ケース(問い合わせ)」といった標準オブジェクトへの流し込み。
- 【重要】無料版の注意点(有料プランが必要な機能):
- 企業ごとに独自に追加した「カスタム項目(末尾が
__cで終わる項目)」へのデータ連携ができない。 - 独自に作成した「カスタムオブジェクト」へのデータ登録ができない。
- フォームに添付されたファイルのSalesforce(「ファイル」セクション)への自動アップロードができない。
- 企業ごとに独自に追加した「カスタム項目(末尾が
実務のお問い合わせフォームでは、独自のアンケート項目やヒアリング内容をSalesforceのカスタム項目に格納したいケースが多いため、この「カスタム項目は有料」という注意点を知らずに進めると、後から設計の変更を余儀なくされる罠があります。
もし有料プランの購入が難しい場合は、オブジェクトが限定されますがSalesforceの標準機能「Web-to-リード(またはWeb-to-ケース)」の実装方法の切り替えを検討しましょう。この方法であれば、Contact Form 7の送信完了イベントに数行のPHPコードをフックさせて、カスタム項目へデータを自動送信できるようになります。プログラミングが可能であれば、プラグインを使わない本格的なAPI連携も検討しなければならないかもしれません。
まとめ
WordPress(Contact Form 7)とSalesforceの連携は、プログラミングによる開発が必須だと思われがちですが、プラグインを活用することで驚くほど簡単に構築できます。無料範囲内で済む場合は積極的に実装方法の検討をして良いと思います。複雑な連携は有料か、本格的なAPI連携を検討して、取り込み後のSalesforceの複雑な処理はフローで行うのがよさそうですね。