トップページ > 記事閲覧
【質問】「外部リンクの開き方」で「別ウインドウ」の設定について(target=”_blank”の問題)
投稿日 : 2019/08/12(Mon) 09:22
投稿者 nakah
参照先
みなさん、こんにちは。

・最近、下記の記事を見つけました。
https://nelog.jp/remove-target-blank-from-all-page-link

>2019年8月初旬頃から一部ブラウザやアプリにおいて「target=”_blank”が付加されたリンクが開けない」という問題が出てきました。

>target=”_blank”属性がついていて、「新しいタブ(ウィンドウ)」で開かれるリンクは、悪用されると、悪意あるスクリプトコードが実行されてしまうという問題があります。

>それを回避するには、target=”_blank”リンクに対してrel=”noopener”を付加する必要があります。

>よりセキュリティを高めるのであれば、rel=”noopener noreferrer”も付加した方が良いでしょう。


・WordPressでは「target=”_blank”に rel=”noopener”が自動で付加されるようです。


・また下記の記事のように、スマホの操作性などから、外部リンクを別ウインドウで開かないことも検討したほうが良いのではないかという意見もありました。
https://www.msng.info/archives/2015/06/no-more-target_blank.php


●いま、HAIKの設定で「サイト情報の設定」の中の、「外部リンクの開き方」を「別ウインドウ」にすることが、おすすめの設定になっています。
そして、別ウインドウにすると下記のコードが付加されます。

<script>
if (typeof QHM === "undefined") QHM = {};
QHM = {"window_open":true,"exclude_host_name_regex":"別ウインドウで開かないURL","default_target":"_blank"};
</script>


◆それで皆さんに、下記の2つのことについて質問したいと思います。

(1) HAIKで「target=”_blank”に rel=”noopener”を付加する」には、どうしたらよいのでしょうか? 分かる方がいらっしゃいましたら、教えていただけると助かります。

(2) また「外部リンクを別ウインドウで開かない」という意見に対して、皆さんはどう考えますか?

私は、閲覧者が外部サイトに行って、元のサイトに戻れなくなってしまうのを防ぐために、いままで外部リンクは別ウインドウにしてきましたが、スマホ主流のいまの時代では、外部リンクを別ウインドウや新しいタブで開かなくても良いのでしょうか?
記事編集 編集
Re: 【質問】「外部リンクの開き方」で「別ウインドウ」の設定について(target=”_blank”の問題)
投稿日 : 2019/08/16(Fri) 09:35
投稿者 nakah
参照先
いしまるさんテストとコメントありがとうございます。

いろいろ他の記事なども読んだり、自分でも意識してサイトやページの操作などをしていたら、「target=”_blank”」は、もう古いという感じがしました。

また、私のウェブサイトやブログなどは、外部リンクが自分が作ったサイトだけなので、外部リンクを別ウインドウで開かないことにしました。

Wikipedia も外部リンクは別ウインドウで開かないし、Googleも下記のように何か難しいことを書いていました。

https://developers.google.com/web/tools/lighthouse/audits/noopener


HAIKで、別ウインドウを開かない設定にすると、window_open のところが下記のコードに変わりました。

<script>
if (typeof QHM === "undefined") QHM = {};
QHM = {"window_open":false,"exclude_host_name_regex":"","0":"default_target"};
</script>
記事編集 編集
Re: 【質問】「外部リンクの開き方」で「別ウインドウ」の設定について(target=”_blank”の問題)
投稿日 : 2019/08/14(Wed) 14:13
投稿者 いしまる◆vOmCuTAP2Tw
参照先 https://haik.oi21.net/
HAIKのlibフォルダやpluginフォルダ内のソースを修正すれば
良いのでしょうが、ちょっと見てもよくわかりませんでした。

指定したドメインがURLに含まれない場合に「"rel"="noopner"」を
追加するのであれば、次のようなJavaScriptで出来そうです。
したがって、余計なリンクにも「"rel"="noopener"」が付加されます。
「var mydomain='haik.oi21.net'; // 自分の環境に合わせる」の
haik.oi21.netの部分をご自分のサーバーに合わせます。


#lastscript{{
<script>
$(function () {
var mydomain='haik.oi21.net'; // 自分の環境に合わせる
$("a").each(function() {
var href=$(this).attr("href");
if (href !== undefined){
if (href.indexOf(mydomain) == -1) {
//mydomainがurlに含まれない場合
$(this).attr("rel","noopener");
}
}
});
});
</script>
}}

「"target"="_blank"」の時がどうかは、JavaScriptの実行タイミングの
関係でうまく動作しない事があるようです。
どこか1ページでうまく動けば、フッター編集にこのコードを移動
すれば、ページ毎に記述しなくても済むと思います。



ソースは以下のURLの方が見やすいです。(掲示板は行頭の半角空白が
省略されるのでインデントが分からない)
https://haik.oi21.net/index.php?gaibu_link_test
記事編集 編集
件名 スレッドをトップへソート
名前
メールアドレス
URL
画像添付


暗証キー
画像認証 (右画像の数字を入力) 投稿キー
コメント

- WEB PATIO -