WordPressの問合せプラグインで有名な「Contact Form 7」ですが、入力されたデータを保存する機能はなく、メールを送信するのみです。複数人で管理する場合、メーリングリストに送信すれば可能ですが、問い合わせ内容をリストでみたり、対応状況をリストで確認することはできません。管理者の入れ替えもありますので、後から参加した管理者も過去の履歴を一覧でみたいことはあります。
初回に対応した履歴も残したいので、phpで直接、DBを読み書きするプログラムを作成します。
問合せ管理の要件
管理するのは初回対応のみ
ユーザーからの問い合わせに対して、なにも反応しないのはよくないので、初回の対応(返信)を記録したい。スパムは宣伝は対応しなくてよい。初回の対応以降は、担当者の個別のメールアドレスや電話でやりとりする。
複数の管理者が対応する
問い合わせの内容によって対応者がかわります。自分の担当と判断した人が初回の対応をします。
ContactFrom7のメールからクリックして対応する
ContactForm7のメールを管理者が登録されているメーリングリストに送信します。自分の担当と判断した人は、メール本文に記載されている管理用のWebページのURLを開いて、初回の対応(返信)をします。
管理用のWebページ
初心者でも入力できる簡易的なWebページにしたい。よって、WordPressの管理ページは利用せずに、シンプルなphpのサイトを作成して、ベーシック認証でパスワード制限をかける。
過去の履歴を一覧で表示したい
問い合わせのリストを表示する。そこから個別に返信ページに遷移する。
プラグインの検討
Flamingoプラグイン
Contact Form 7 と同じ作者が作成したフリーの WordPress プラグインです。
コメント欄も管理できて、簡易的なCRM(顧客関係管理)の機能があります。
参考サイト
初回の対応も記録したいので、phpで直接、登録するようにします。
インストールしてみましたが、テーブルの構成がよくわからなかったので導入しませんでした。
Contact Form DBプラグイン
複数の問い合わせプラグインに対応していますが、公開停止になっているのと、入力フォームの input 一つ一つがそれぞれ1レコードとして登録されるそうなので、導入しません。
参考サイト
Save Contact Form 7プラグイン
「Save Contact From 7」プラグインは、1つの問い合わせを1レコードで保存するシンプルな構成なので、こちらのプラグインを導入しました。
ContactForm7のデータを保存します。ソート、検索、CSV、PDF形式でのエクスポート。 WP 4.7.2 + CF7 4.6.1で完全にテストされ、完全にサポートされています。
最新のバージョンにも対応しています。
連番を登録したい
「Save Contact From 7」プラグインは1つの問い合わせフォームごとに、対応するテーブルが1つ作成されますが、プライマリキーはidというフィールドでAuto Incrementです。
`id` int(8) NOT NULL AUTO_INCREMENT
ContactForm7の管理者への送信メールにこのIDを含めたいです。IDを問い合わせ番号として管理することで、送信メールに対象の問い合わせを返信するURLを貼ることができます。
Contact Form 7 Serial Numbersプラグイン
Contact Form 7の自動送信メールに連番を付与するプラグインです。「Save Contact From 7」プラグインで作成したテーブルのidの値と一致させれば、自動送信メールに問い合わせ番号を含めることができます。
連番の開始番号をWordPressの管理画面から変更できます。
参考サイト
問い合わせ画面は別サイトで作成
元のサイトのワードプレスと一緒に管理するとややこしくなるので、別途、新規にワードプレスをインストールしました。イントール先はサブドメインにしました。
作成した問い合わせページ
作成方法は次の記事で。