
はてなブログで記事のURLを変更しても、古いURLがクリックしたとき新しいURLにリードできるようリダイレクトを実施したお話です。
リライトするとURLが変わる問題
過去ブログのリライトはよくやるのですが、
リライト後 URLが変わっとる!!
問題にぶつかります。
基本カスタムURLにしていれば、リライトしてもURLは変わらないのですが、
- 過去記事URLを「標準(日付)」にしている
- 過去記事を一旦下書きに戻す
- リライト後過去記事の日付URLでカスタムURLにする
場合でも、何故か新しい日付URLで記事が出来てしまい・・・
過去の日付URL記事がデッドリンク!
になってしまいます(>o<)
対処方法もあれこれ探したんですけど見つかりませんでした・・・
デッドリンク記事を新しい記事にリダイレクトする
たいしてクリックされない雑記記事ならよいのですが、多少アクセスがあった記事だととてつもない損失なので、あれこれ探していると「古いURLから新しいURLにリダイレクトする」方法を発見。
やりとしては以下でとても簡単でした。
- デッドリンクになったURLで新しい記事をカスタムURLで作成する
- 以下「この部分を新しいURLに変更して下さい」に新しいURLを入れる
- 新しい記事を公開する(最近の日付だとTOPで目立つので、かなり過去の日付にしました)
- <p>こちらの記事は移転しました。
- <br />約 5秒後に新しい URL へ転送されます。
- <br /><br />自動的に転送されない場合は
- <a href="この部分を新しいURLに変更して下さい">
- <strong>こちら</strong></a> をクリックしてください。</p>
- <p><script type="text/javascript" language="javascript">
- var href = window.location.href;
- var re = new RegExp(".*entry.*");
- if (re.test(href)) {
- var url = "この部分を新しいURLに変更して下さい";
- setTimeout("redirect()", 3000); // 3秒後
- function redirect(){
- location.href = url;
- }
- }
- </script>
- </p>
以下記事を参考にさせていただきました。ありがとうございます。