<a href="" ping=""></a>
更新日 | |
---|---|
仕様 | HTML Living Standard |
分類 | フロー・コンテンツ / フレージング・コンテンツ / インタラクティブ・コンテンツ(href属性がある場合に限る) / パルパブル・コンテンツ |
利用場所 | フレージング・コンテンツが置ける場所 |
内容 | トランスペアレント(親要素のコンテンツモデルを継承) ただし、インタラクティブ・コンテンツ、a要素、およびtabindex属性が指定された要素は含められない |
a要素に ping=""
を追加すると、リンクをクリックした時にping(POSTリクエスト)を送信することができます。
この機能を使うことで、どのリンクが何回クリックされたのかといった情報を取得できるようになります。(別途プログラムが必要)
<a href="example.html" ping="tracking.cgi">リンクテキスト</a>
属性 | 値 | ||
---|---|---|---|
任意属性 | |||
href="" |
リンク先の指定 | URL | リンク先のURL |
ping="" |
pingの送信先 | URL | 半角スペース区切りで複数指定可能 |
href属性とping属性について
- href属性
- href属性の値には、リンク先のURLを指定します。ここで指定されたリンク先のページが、ユーザーに表示されることになります。
- ping属性
- ping属性の値には、pingの送信先となるURLを指定します。この送信はバックグラウンドで行われます。(受信する側には、データの処理を行うプログラムが必要です)
次の例では、リンク先として example.html
、pingの送信先として log.cgi
を指定しています。
<a href="example.html" ping="log.cgi">リンクテキスト</a>
複数のURLにpingを送信する場合は、半角スペースで区切って次のように記述します。
<a href="example.html" ping="log1.cgi log2.cgi">リンクテキスト</a>
pingの送信内容について
送信されるping(POSTリクエスト)の内容には、次の3つの情報が含まれています。
- Ping-From ヘッダー
- リンク元のURLが入っています。
HTTP_PING_FROM
で取得が可能。 - Ping-To ヘッダー
- リンク先のURLが入っています。
HTTP_PING_TO
で取得が可能。 - 本文
- リクエストの本文は
PING
という文字列です。
例えば、今見ているこのページからトップページにリンクした場合は、
<a href="../../" ping="/cgi/tracking.cgi">リンクテキスト</a>
取得できるURLは次のようになります。
- Ping-From: https://www.tagindex.com/html/text/a_ping.html
- Ping-To: https://www.tagindex.com/
- ただし、SSLで保護されたページにリンクが設置されていて、pingの送信先が異なるオリジンになる場合には、Ping-From(リンク元のURL)は取得できません。
pingの用途
ping属性とプログラムの処理を組み合わせることで、広告の効果測定やダウンロード回数の集計などに役立てることができます。