[wp]ContactForm7の受信メールをGoogleスプレッドシートでリスト化する方法

ある意味Flamingoより便利。

CF7 Google Sheets Connector

これを使う。

CF7 Google Sheets Connector
Send your Contact Form 7 data directly to your Google Sheets spreadsheet.

仕様とか注意点とか

プラグインにGoogleアカウントを連携する。→連携できるアカウントは1個だけ

ContactForm7自体に手を入れる必要はない。

スプレッドシートに出力されるのは予め設定した項目のみ。→フォームを編集したらシートも編集する必要がある

スプレッドシートはContactForm7で作成したフォーム毎に紐づく。

スプレッドシートの公開範囲はいじらなくていい(機能と無関係)。

やっていく

英語なので面倒くさいけど、この記事を読めばほぼ問題ない。バージョンアップで仕様が変わった部分があるので注意しなければいけないところはある。

プラグインのインストール

「CF7 Google Sheets Connector」で出る。

Googleアカウント(Googleドライブ)と連携

「お問い合わせ」→「Google Sheets」で設定画面に行く。

「Get Code」を押すとGoogleアカウントの設定画面に飛ぶ。

使用するアカウントを選んで進めていく。

アクセス許可のところで注意。

必ず、任意になってる下2つにチェックを入れる

これをやらないとスプレッドシートの編集ができない。

進めていくとWPの管理画面に戻る。

コードが入ってるので「Save」をクリック。読み込まれて表示が変わる。

完了。

フォームとスプレッドシートの連携

連携したアカウントでスプレッドシートを作成する。

「スプレッドシートの名前」「タブ(シート)の名前」を入力する。以降、変更しない前提で入力すること。

連携するフォームの設定画面を開く。

フォームのコードと同じ内容をスプレッドシート1行目に並べていく。

デフォルトの内容だったらこんな感じ

スプレッドシートから以下の内容を控える。

  • スプレッドシート名
  • スプレッドシートID
  • タブ名
  • タブID

名前はさっき入力したから分かる。IDはURLから引っ張ることになる。

https://docs.google.com/spreadsheets/d/【スプレッドシートID】/edit#gid=【タブID】

スプレッドシート側の作業はこれで終わり。

フォームの設定画面で「Google Sheets」のタブを開いて、上記の4つを入力する。

「Google Sheet Link」をクリックするとスプレッドシートを参照できる

入力したら「保存」をクリック。

設定はこれで終わり。

テストと確認

フォームからテスト送信してみる。

送信後、ほぼ時間差も無く追記される。

送信しても何も変わらない場合は連携をミスってる。アカウントの連携、スプレッドシートの連携を見直す。

おしまい。

出力内容の拡張

出力できるのは入力内容だけでなく、CF7で用意されているメールタグも使うことができる。

特別なメールタグ | Contact Form 7 [日本語]

要するに、「いつ送られてきたか」「どこから送られてきたか」がこれで分かる。

例えばこんな感じ。

[_date]はdateになる

便利。

Flamingoとの差別化

CF7といえばFlamingoなのだけど、Flamingoは管理画面で見られるメリットがあるんだけど、ソートもできるから便利なんだけど、誰でも全部見れちゃうっていうのが難点。アカウントの制限をかけたら良いじゃんってことだけど、フォーム毎に分けられないわけで。あとは閲覧にはいいんだけど、そこから何かをしたい場合には不便。例えば住所を吸い取ってDMを送りたいとか、そういうのに向かない。

なので、営業目線で考えたらスプレッドシートでリスト化できてる方が都合がいいですね。

おまけ:参照元の追加

[_url]で送信ページは分かる。なのでフォームの使い回しに対応できる。

もう一つの使い回しのケースとして、QRやら広告やらであっちこっちから飛ばしてくるというものがある。そんなもんはアナリティクスの範疇であってフォームで受け取れないので当然なのだけど、「どっから来たのか計測できねーんだけど!」をやられる場合がある。

そういうときにこれ。

jsでパラメータを拾ってきて計測用のinputにぶち込めばいい。組み込み自体は大したボリュームじゃないし一度作ってしまえばいい内容なのでそこまでダルくない。

ContactForm7はtype=”hidden”も使えるので、ユーザーに無関係なものを露出せずにやっていける。

でまあ、案件で使ったのだけど、これを知ってしまったら常に仕込むのが無難な気がしてきた。それでもってちゃんと発火させるためにはパラメータを必ず付けるというルールが生まれるので、面倒くささが発生するので、勝手なことをする可能性にブレーキがつけられるということでもある。

コメント

タイトルとURLをコピーしました