1. はじめに
ウェブ制作において、外部リンクや内部リンクを新しいタブで開くためにtarget="_blank"
を使うことは非常に一般的です。そして、近年ではnoopener
やnoreferrer
を併用することが推奨されるケースも増えています。しかし、実際にこれらの属性は本当に必要なのでしょうか?特に、主要なブラウザが自動的にnoopener
を付与する現状や、noreferrer
がサイト分析に及ぼす影響について考察していきます。
2. target="_blank"
とnoopener
の関係
2.1 target="_blank"
の基本
target="_blank"
は、リンクをクリックした際に新しいタブやウィンドウでページを開くための属性で、ユーザーが元のページに戻りやすくなるため、特に外部リンクで多く利用されています。しかし、target="_blank"
を使用するとリンク先ページが元ページにアクセスできる「オープナー問題」と呼ばれるセキュリティリスクが発生する可能性が指摘されています。
2.2 自動的に付与されるnoopener
実は、現在の主要なブラウザ(Firefox、Safari、Chromeなど)は、このセキュリティリスクを軽減するために、target="_blank"
が使用された際に自動的にnoopener
属性を付与しています。つまり、開発者が明示的にnoopener
をコードに追加しなくても、ブラウザ側でこの保護が適用されるため、ほとんどのケースでは追加する必要がありません。
このため、外部リンクや内部リンクにおいて、セキュリティの観点からnoopener
を強制的に追加する作業は、ブラウザの進化により不要となっているのです。
3. noreferrer
が分析に与える影響
3.1 noreferrer
の役割
一方、noreferrer
はリンク先にリファラ情報(リンク元のURL)を送信しないようにするための属性です。プライバシー保護や、特定のセキュリティ強化が求められる場合に有効ですが、これにはデメリットも存在します。
3.2 分析におけるデメリット
noreferrer
を使用すると、リファラ情報がリンク先に送信されないため、ウェブサイトのアクセス解析においてリンク元の情報が取得できなくなります。たとえば、Google Analyticsやその他の分析ツールでは、リンク元の情報がトラフィック元を特定する上で重要な役割を果たします。リファラ情報が無効化されることで、外部サイトからの流入経路が不明瞭となり、効果的なマーケティングやSEOの戦略立案に支障が出る可能性があります。
また、サイト間でのパートナーシップがある場合、相手方に流入の証拠を示すためにリファラ情報が必要となるケースも多いため、ビジネス上の不都合が生じることも考えられます。
4. まとめ
現在の主要ブラウザでは、target="_blank"
に対して自動的にnoopener
が付与されるため、開発者が明示的に追加する必要はほとんどありません。また、noreferrer
はプライバシー保護のために使用される一方で、分析ツールに悪影響を及ぼす可能性があるため、特に外部リンクで使用する際には慎重に検討する必要があります。
ウェブ制作においては、セキュリティとユーザー体験、そして分析・マーケティングのバランスを考慮し、noopener noreferrer
の使用を状況に応じて最適化することが大切です。
参考
- MDN Web Docs –
noopener
属性についてhttps://developer.mozilla.org/ja/docs/Web/HTML/Link_types/noopenerMozillaが提供する開発者向けドキュメント。
noopener
の説明や使用方法について詳細に記載されています。 - MDN Web Docs –
noreferrer
属性についてhttps://developer.mozilla.org/ja/docs/Web/HTML/Link_types/noreferrernoreferrer
属性について、リファラ情報が送信されないことや、その影響について説明しています。