外部リンク
高級お出汁のような WordPress テーマ
https://snow-monkey.2inc.org/
内部リンク
https://demo.gonsy.net/embed-movie/
電話番号
#ハッシュ
#からはじまるリンクは無視します。
以下のJavaScriptを外部ファイル化。wp_enqueue_script
+条件 ! is_page( 'jump' )
でサイト内すべての記事やページ(中間ページ以外)に記述するように my-snow-monkey.php
に追記。
- ページ内の
<'a'>
がクリックされた際、内部リンクは、そのまま移動する。
※href="tel:"
は対象外とする。 - 外部サイトの場合、指定したURL(中間ページ=
https://demo.gonsy.net/jump/
)に移動する。 https://demo.gonsy.net/jump/
には、取得した外部サイトのURLを表示、移動ボタン<'a'>
にURLを挿入する。
document.addEventListener('DOMContentLoaded', function() {
var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
links[i].addEventListener('click', function(e) {
var href = this.getAttribute('href');
if (!isHashURL(href) && isExternalURL(href) && !isTelURL(href)) {
e.preventDefault();
redirectToNextPage(href);
}
});
}
});
function isExternalURL(url) {
var host = window.location.host;
return url.indexOf(host) === -1;
}
function isTelURL(url) {
return url.toLowerCase().startsWith('tel:');
}
function isHashURL(url) {
return url.startsWith('#');
}
function redirectToNextPage(url) {
localStorage.setItem('clickedUrl', url);
window.location.href = 'https://demo.gonsy.net/jump/';
}