前回の続きです。
Twenty Seventeenのフッターにあるsiteinfoを編集
標準のWordPressでも問題ありませんが、変えてみました。
テーマファイルを変更するので、子テーマを作るべきですが、今回は直接fotter.phpを変更しました。
// get_template_part( 'template-parts/footer/site', 'info' ); ?> <div class="site-info"> <a href="https://memordm.com/">Proudly powered by MemoRdm</a> </div>
Save Contact Form 7プラグインを有効にする
問い合わせフォームの動作を確認したら、Save Contact Form 7プラグインを有効にします。
WordPressのDBを確認すると空のテーブルがひとつ追加されています。
テーブル名:SaveContactForm7_lookup
-- -- テーブルの構造 `SaveContactForm7_lookup` -- CREATE TABLE IF NOT EXISTS `SaveContactForm7_lookup` ( `lookup_id` int(8) NOT NULL, `CFDBA_tbl_name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `CF7_created_title` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `CF7_created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `CF7_version` varchar(10) COLLATE utf8_unicode_ci NOT NULL, `CF7_form_id` int(8) NOT NULL, `CF7_from_wpposts_or_tbl` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `CF7_removed_flag` enum('YES','NO') COLLATE utf8_unicode_ci NOT NULL DEFAULT 'NO' ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; -- -- Indexes for table `SaveContactForm7_lookup` -- ALTER TABLE `SaveContactForm7_lookup` ADD PRIMARY KEY (`lookup_id`); -- -- AUTO_INCREMENT for table `SaveContactForm7_lookup` -- ALTER TABLE `SaveContactForm7_lookup` MODIFY `lookup_id` int(8) NOT NULL AUTO_INCREMENT;
問い合わせフォームを保存する
作成済みの問い合わせフォームの編集画面を開いて保存します。
問い合わせフォーム用に空のテーブル(SaveContactForm7_1)が作成され、SaveContactForm7_lookupテーブルにテーブルと問い合せフォームをリンクするレコードが1件登録されます。
テーブル名:SaveContactForm7_lookup
テーブル名:SaveContactForm7_1
ここに問い合わせフォームの内容が保存されます。
-- -- テーブルの構造 `SaveContactForm7_1` -- CREATE TABLE IF NOT EXISTS `SaveContactForm7_1` ( `id` int(8) NOT NULL, `created_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `your_name` text COLLATE utf8_unicode_ci, `your_email` text COLLATE utf8_unicode_ci, `your_subject` text COLLATE utf8_unicode_ci, `postal_code` text COLLATE utf8_unicode_ci, `address1` text COLLATE utf8_unicode_ci, `address2` text COLLATE utf8_unicode_ci, `your_message` text COLLATE utf8_unicode_ci, `your_acceptance` text COLLATE utf8_unicode_ci ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; -- -- Indexes for table `SaveContactForm7_1` -- ALTER TABLE `SaveContactForm7_1` ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT for table `SaveContactForm7_1` -- ALTER TABLE `SaveContactForm7_1` MODIFY `id` int(8) NOT NULL AUTO_INCREMENT;
問い合わせフォームを保存するテーブルは、問い合わせフォームを作成するごとに連番で増えていきます。
SaveContactForm7_1、SaveContactForm7_2、SaveContactForm7_3・・・
問い合わせフォームのIDで紐付いていますが、ContactForm7プラグインのバージョンにも紐付いていますので、ContactForm7のバージョンアップをしたときは、別テーブルになります。
別テーブルにしたくないので、「ContactForm7をバージョンアップしない」または「ContactForm7をバージョンアップしてからSaveContactForm7_lookupテーブルのレコードを手動で修正する」ことになります。
問い合わせの管理番号
SaveContactForm7_1テーブルのIDフィールドはプライムキーでAUTO_INCREMENTです。この値と、「Contact Form 7 Serial Numbers」プラグインの値を一緒にしたいので、通し番号の初期値を0にします。
問い合わせを入力する
実際に問い合わせをして、メール送信、DB保存を確認します。
入力サイト → https://inquiry.memordm.com
メールを確認する
入力した内容と、回答用のリンクが生成されました。
DBを確認する
管理画面からみる
SaveCF7をクリックし、フォームを選択すると対象のデータが表示されます。
phpMyAdminでみる
idが1で登録されているのがわかります。
次回は、この「SaveContactForm7_1テーブル」を直接、リストするphpプログラムと回答用の「SaveContactForm7_1Aテーブル」を作成し、回答を書き込むphpプログラムを作成します。