404ページカスタマイズ!

f:id:elve:20220123080543p:plain
移動先がわかってるわけだから、せっかくアクセスしてくれた人には移動先をご案内したいなぁ、と。
僕の苦手なJavascript領域です。瘴気が濃い!!←酷いw

結果

デフォルトはてなブログ404
f:id:elve:20220123074518p:plain

アフター(適当URLなので移動先も404(^_^;))
f:id:elve:20220123074555p:plain

スペシャルサンクス

ベースはこちら。(jQurey を使わずに 、と言われても使う方法もわからぬレベル・・・)
h-s-hige.hateblo.jp

ソース

VisualStudioCodeが無茶な改行入れるので再インストール中(´;ω;`)

<script>
document.addEventListener('DOMContentLoaded', function() {
// 404ページじゃなかったら終了
if (document.querySelector('#main-inner').getElementsByClassName('no-entry').length === 0) {
console.log('1');
return;
}
// 記事の中身(Entry is not found お探しの記事は見つかりませんでした。)なかったら終了
var ec = document.querySelector('.entry-content');
if (!ec) {
console.log('2');
return;
}
var h1s = ec.getElementsByTagName('h1'); // Entry is not found
var ps = ec.getElementsByTagName('p'); // お探しの記事は見つかりませんでした。
//コレクション→単一要素
h1 = h1s && h1s[0];
p = ps && ps[0];
//要素がなかったら終了
if (!(h1 && p)) {
return;
}
// Entry is not found 書き換え
h1.innerText = '記事は移動したかもしれません';
// お探しの記事は見つかりませんでした。 書き換え
p.innerText = '下記サイトのサイドバーの検索も利用していただければ幸いデス';
// 移動先候補リンク追加
var h2 = document.createElement('h2');
h2.appendChild(document.createTextNode("移動先かも"));
ec.appendChild(h2);
var a = document.createElement('a');
a.href = 'https://snack.elve.club' + location.pathname;
a.appendChild(document.createTextNode('https://snack.elve.club' + location.pathname));
ec.appendChild(a)
});
</script>

どのくらい面白かった?

星を押して送信してね

平均 0 / 5. Vote count: 0

是非フォローしてください

最新の情報をお伝えします

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です