PAGETOP

登録不要!actionを変更するだけでメールフォームが送信できるサービス「Formspree」

登録不要!actionを変更するだけでメールフォームが送信できるサービス「Formspree」

メールフォームをサイトに設置する場合、PHPで一から作ったり、ダウンロードしてきたものを設定したりと、多くの工数をかけて作ることになります。
またPHPの使えないレンタルサーバーでは、レンタルフォームを利用することもあると思いますが、カスタマイズの幅が小さく、希望のデザインにできないことが多いです。
そこでご紹介したいのが「Formspree」です。

これは、formタグのactionの値を変更するだけでメールフォームを送信できるサービス。しかも、月1000通までは無料で使えます。面倒な登録もいりません。

使い方

1、フォームのセットアップ

今使っているフォームのactionの値を下記のように設定します。
your@email.comの部分は、フォームの送信先にしたいメールアドレスにします。

http://formspree.io/your@email.com

フォームを新しく作成する場合は、Formspreeのサイトに簡単なサンプルがあるので、こちらを使うといいでしょう。

<form action="//formspree.io/your@email.com" method="POST">
    <input type="text" name="name">
    <input type="email" name="_replyto">
    <input type="submit" value="Send">
</form>

2、フォームを送信

先ほど作成したフォームをサイトにアップロードし、そのまま送信します。
input部分には、特に何も入力する必要はありません。

3、メールを確認

すると、actionで指定したアドレスに「Confirm email for Formspree」というタイトルのメールが届きます。

「Click here to confirm」をクリックして、確認を完了させます。

これで、セットアップは完了です。
先ほどのフォームをもう一度送信すると、今度は自身のアドレスにフォームの入力内容が届くことが確認できると思います。

項目を入力必須にする

inputタグ内にrequiredを入れます。
入力せずに送信しようとすると、メッセージが表示されます。

<input type="text" name="name" placeholder="名前" required>

サンクスページを作成する

何も設定しなければ、送信後はFormspreeの提供するサンクスページに飛びます。これを自サイトのページに飛ばしたい場合は、次のコードを追加します。

<input type="hidden" name="_next" value="サンクスページのURL" />

複数のアドレスに送信する

フォーにはccも設定することができます。

<input type="hidden" name="_cc" value="別のアドレス@email.com" />

メールの件名を設定する

届くメールのタイトルを設定したい場合は次のコードを追加します。
ブラウザ上には表示されません。

<input type="hidden" name="_subject" value="任意のタイトル" />

いかがでしょうか。
手軽なうえに、デザインを完全にサイトに合わせることができるのが魅力ですね。これからメールフォームの導入を考えている方はぜひ試してみてください。