Pirate Formsプラグイン ~WordPress~
Contents
Pirate Formsとは
Pirate Formsは閲覧者からの問い合わせを受け付けるコンタクト・フォームを作成する為のWordPressのプラグイン。
VM環境にHestiaテーマをインストールした時におすすめ設定で表示されたので試してみる事にした。
Pirate Formsプラグインの備忘録として書いておく。
ちなみにこのブログのお問い合わせフォームはCONTACT form 7をインストールして使っている。
下記はHestiaでので問い合わせフォーム(Pirate Forms)
CONTACT form 7との違い
Pirate Formsをインストールして一通り使ってみてCONTACT Form 7との違い、というか感想。
- 無償版同士だとCONTACT Form 7の方が細かい設定が出来たりカスタムフィールドが追加出来たりする
- Pirate Formsの方はシンプルで分かりやすい。必要な機能が過不足なく揃っている
- SMTP送信がプラグイン内で設定できるのはPirate Forms。CONTACT Form 7は別プラグインをインストールした
- Pirate Formsは問い合わせフォームに入力した問い合わせ者の情報をデータベース化したり他のメール送信アプリと連携(有償)ができる。より企業利用をイメージしている
- CONTACT Form 7の方がエラーメッセージを細かく設定できる。Pirate Formsはとにかくシンプル
インストール
インストールと有効化は前述のHestiaの記事を参照。
テーマをインストールした時にHestiaのおすすめ設定で表示されたので「インストールと有効化」ボタンを押すとWordPressのメニューにPirate Formsのメニューが表示されるようになる。
普通にプラグインー>新規追加でPirate Formsを検索してインストールもできるはず。
Settings
How to useタブ
使用方法について記述しているページ。
新しくフォームを作成するには以下の3つ方法がある
- ウィジェットを追加する
- 任意のページまたは投稿にショートコード[pirate_forms]を記述する
- テーマのファイルにショートコード<?php echo do_shortcode( ‘[pirate_forms]’ ) ?>を記述する
Hestiaの連絡先セクション(コンタクト・フォーム)はデフォルトでPirate Formsを使用する仕様になっているので、(Hestia)テーマー>カスタマイズー>フロントページセクションー>連絡先セクションー>連絡先の本文
で設定メニューを表示させるとデフォルトでショートコードが設定されている。下記参照
その他のテーマを使用している時は上記1~3の方法でPirate Formsを使用する(のだと思う)
また赤字で注意書きで何やら書いてあった。
要はSMTP以外の構成を使用してる時は迷惑メールフォルダに入ったりメールが失われたりするのでシステム管理者に相談するかSMTP構成にして下さい、との事。
元々SMTP構成にしようと思っていたので問題なし。
Options
Contact notification email address | 送信元のe-mailアドレスを指定する 閲覧者が問い合わせフォームで問い合わせ入力を行うと、このメールアドレスからメールが届くことになる 注意書きに「このメールアドレスのドメインはサイトのドメインと一致する必要があります」とあるがgmailアドレスを指定して”アクティビティを確認”(後述)を行った所、問題なく問い合わせメールが送信されたので必ずしも一致していなくても良い模様 |
Contact submission recipients | 送信先(問い合わせを受け取る)メールアドレス カンマで区切って複数のメールアドレスを指定する事ができる 上記の送信元と同じメールアドレスを指定した |
チェックをすると問い合わせ内容がデータベースに保存される 保存された問い合わせはWordPressメニューのPirate Formsー>All Entriesで確認することができる(詳細は後述) またGDPR(General Data Protection Regulation:EU一般データ保護規則)によると、問い合わせ内容の保存についてユーザに同意を求めることを推奨する、とあった | |
Track and store IP of user | チェックをすると問い合わせフォーム入力者のIPをトラックしてメールコンテンツ内に表示する 上記のデータベースへの保存と同様GDPRによるとユーザに同意を求めることを推奨とあった 問い合わせメール例) IP search欄に問い合わせフォーム入力者のIP Addressが表示されている |
Add a nonce to the contact form | チェックをすると問い合わせフォームにWordPress nonce※が使用される(デフォルトでチェックされている) nonceを使用すると存在チェックが行われるのでスパムを減らす事ができる一方、ページをキャッシュするプラグインを使っているサイトでは問題を起こすことがあるので、”Nonce failed!”でエラーになるとの苦情を受け取っている時はOFFにせよ、とあった ※nonceは(CSRF:Cross-site Request Forgery)対策の為の、一度だけ使用される数値 hiddenフィールドに推測困難な数値を埋め込んで本人以外の捏造したHTTPリクエストを受け付ない様にする仕組み ちなみにWordPress nonceは数値では無く数値と英字を使ったハッシュで無効になるまでの有効期間をもっており、期間内であれば何回でも使用される所がnonceとは若干異なる(セキュリティ上の要件は同じなのでnonceと名乗っている模様) |
テキスト欄に入力をすると問い合わせフォーム入力者(フォームに入力したメールアドレス)に確認メールが送信される 件名はAlert MessagesタブのSuccessful form submission text欄が使われる 確認メール本文欄 下記のメールが問い合わせフォーム入力者に送られる 尚、HTMLは記述できない | |
Add copy of mail to confirmation email | チェックをすると上記の確認メールに問い合わせ時のフォームに入力した項目が追記(コピー)される 上記の”Send email confirmation to form submitter”にテキストが入力されている時(問い合わせフォーム入力者に確認メールが送信される時)のみ有効 チェックをした時の問い合わせフォーム入力者に送信されたメール |
Save Attachment? | 問い合わせフォームでファイル添付項目が有効(デフォルトでは非表示)な時のオプション チェックをすると添付ファイルが保存される、とあるが受信メールにはチェックの可否に関わらずファイルが添付されている チェックをすると「メディア」に添付ファイルが保存されるのかと思ったのだがそうでもないみたい イマイチよく分からなかった |
Success Page | フォームの送信が成功した時に表示されるページを指定する NONE(無し)、固定ページから選択することができる |
Integrate with Akismet? | チェックをするとAkismetプラグインと連携する Akismetが迷惑メールかどうかを判断してスパムメールをフィルタリングしてくれる Akismetを有効にしておく必要がある |
Fields Settings
項目の表示、非表示、必須の設定
項目 | 以下の項目について
下記の3パターンから選択する
※CheckboxはFields Labelsタブでチェックボックの項目を登録すると表示されるようになる 下記、checkboxの入力例 |
Add a spam trap | スパムメール対策
から選択可能 Customの使い方はイマイチ分からなかった Google reCAPTCHAはGoogleが提供している「ボットからサイトを守る」ための仕組み 詳細はContact Form 7でreCAPTCHAを使ってみた時の記事を参照 上記の記事の時に所得したSite keyとSecret keyを試しに設定してみたが当たり前だがVM環境(localhost)なので機能しなかった souichi.clubドメインで設定すれば正しく表示されてスパムを防いでくれる(はず) |
Fields Labels
項目のラベルを設定する。
Name、Email、Subject、Message、Submit button | 左記の項目の表示ラベルが設定できる 日本語も設定可能 |
チェックボックの文言 この項目に入力してFields SettingsでDisplay but not requiredかRequiredを選択するとチェックボックが表示される | |
Email content | 受信メールのレイアウトの設定 以下のタグが指定可能 {name}: Your Name |
Alert Messages
エラーメッセージや確認メールの件名などを指定する。
下記、メッセージを日本語に変えてみた例
Name required and missing | Name(名前)が必須にも関わらず未入力の時に表示されるメッセージ |
E-mail required and missing | E-mail(メールアドレス)が必須にも関わらず未入力の時に表示されるメッセージ |
Subject required and missing | Subject(件名)が必須にも関わらず未入力の時に表示されるメッセージ |
Question/comment is missing | Message(本文)が必須にも関わらず未入力の時に表示されるメッセージ |
Attachment is missing | Attachment(添付ファイル)が必須にも関わらず未入力の時に表示されるメッセージ |
Checkbox is not checked | Checkbox (チェックボック)が必須にも関わらず未入力の時に表示されるメッセージ |
Successful form submission text | 確認メールの件名(前述) |
SMTP
SMTPの設定、gmailを設定した時の例
Use SMTP to send emails? | チェックをするとPHPメールの代わりにSMTPを使用する |
SMTP Host | ”smtp.gmail.com” を指定した |
SMTP Port | 587 を指定した |
Use SMTP Authentication? | チェックをするとSMTP認証を行う |
Security? | セキュリティ
が選択可能。TLSを選択した |
SMTP Username | メールアドレス(gmailの場合) |
SMTP Password | パスワード |
Send Test Email | テストメールを送信する |
アクティビティの確認
テストメールを送信するとgmailの場合、初回は「アクティビティの確認」を求められた。
セキュリティ通知が来たので「アクティビティを確認」
ログインに心あたりがあるので「はい」をクリック
設定が完了
More Features
有料版の紹介
有料版にすると複数のドメイン、カスタムフィールド、MailChimp等との連携が可能になる
- PERSONAL
- BUSINESS
- AGENCY
の3パターンが存在する。
All Entries
前述のStore submissions in the databaseにチェックをすると問い合わせ履歴が保存される。
All Entriesで保存された問い合わせを参照することができる。
最近のコメント