Mailto:URLの要素のクイックガイド

デフォルトの件名、本文テキストなどをメールリンクに指定することができます

あなたのウェブサイト訪問者がmailto:リンクを介してあなたに電子メールを送ることを可能にするなら、あなたは彼らに連絡を確立する特に便利な方法を提供しました。 彼らがしなければならないことは、クリックしてメッセージを入力することだけです。

しかし、この利便性は、すべての偉大なmailto:ストアではありません。 たとえば、デフォルトのサブジェクトを定義したいとしましょう。あなたのウェブサイトのmailto:リンクを介して電子メールが送信されたことがわかります。 または、訪問者が特定のリンクをクリックした場合、本文のデフォルトのテキストを提案することができます(これを使用して簡単なアンケートを作成できます)。

これらがどのように進んだが、決してmailto:workの使い方が難しいのかを見てみましょう。

Mailto:URL

mailtoのURLは、基本的に3つの部分で構成されています。 最初に来る

受信者の電子メールアドレス( mailto:のすぐ後に続く)は実際には複数のアドレスになることがあります。 複数のアドレスはカンマで区切られます(電子メールクライアントのTo:行で使用するのと同じです)。 興味深いことに、デフォルトの受信者アドレスがまったく含まれていない場合、mailto:リンクも有効です(そして動作します)。

したがって、 mailto:の直後にデフォルトのサブジェクト( ?subject =を使用)を置くことは完全に合法です 。 既定の件名で、既定の受信者はないメッセージを作成することができます。mailto:?subject = Doc、%20do%20da%20dance

ヘッダー

最高のものは、もちろん、最後に来る。 mailto:URLの "header"部分には、ほとんど何でもできます。 RFC 2822で指定されているヘッダー名と値 - インターネットメッセージ形式 - は理論的に使用できます。

「Subject:」行だけでなく、「Cc:」(カーボンコピーを送信する)または「Bcc:」(ブラインドカーボンコピー)も指定できます。

X-Headers

特に興味深いのは、任意のヘッダ行を "発明"する能力です。 それらは合法的であるために "X-"の前に付ける必要があります - 多分あなたはどこにでもある "X-Mailer:"ヘッダーを知っています。 任意のヘッダ行に基づいてフィルタリングできる電子メールクライアントと一緒に、これは素晴らしいソートとフィルタリングの可能性をもたらします。

すべてのヘッダー行は、件名から既にわかっているのと同じ方法で指定されます。[header name] = [header value](例: XZ = Y)

残念なことに、このようなX-Headerはブラウザと電子メールクライアントの組み合わせはほとんどないため、送信に頼ることはできません。

デフォルトのメッセージテキスト

最後に、特別なヘッダ名が1つあります: body

この「ヘッダー」では、電子メールメッセージの本文に表示されるテキストを指定できます。 mailto:URLスキームの本体部分は、主に短いテキストメッセージを対象としています。

リンクはHTMLで動作するため、mailto:リンクのデフォルトボディを構築するときに特殊文字をエンコードする必要があります。 例えば、スペースは "%20"に変換されなければならず、改行は "%0D%0A"になります。

幸いにも、これらのエンコーディングを覚えておく必要はありません。 代わりに、 JavaScriptまたは便利なmailto:URLエンコーダを使用してください

ヘッダーの結合

しかし、例えば、複数の「ヘッダ」部分、デフォルトのSubject、およびデフォルトのメッセージテキストをどのように持つことができますか? これはアンパサンドで行われます:

最初のヘッダーは、疑問符の後に受信者のアドレスに続きます: "?" 将来のすべてのヘッダーはアンパサンドで区切られ、任意の順序で添付されます。

たとえば、改行は見た目をきれいにするためだけです(もちろん、改行はURLに挿入しないでください)。
mailto:recipient@example.com
?主題=ハ!
&X-Mailer = Baluba
&body = Ha!%0D%0ABla!