はてなブログの記事の URL は、ツールバーからカスタムできる。
各エントリーの URL は、カスタムしない場合には、「(ドメイン)/entry/2016/04/11/( 6 桁の数字列)」になるけれど、URL をカスタムすれば、「/entry/」以下を自由に設定できるようになる。
URL 自体についての話は、別に用意しているので、このエントリーでは省く。
このブログでは、日付とその日のエントリー数とテーマを元に URL を設定することにしている。ところが、自分でレギュレーションを決めて URL をカスタムしていたはずなのに、誤って投稿してしまうこと数度。結局、誤って設定した URL は修正することにしたが、そこで、困った。
Google Search Console から URL を削除してはいけない
Google Search Console に登録しておくと、記事の投稿後、ものの数分で Google にインデックスされるようで。
自分のサイトのインデックス状況を知りたければ、Google で、「site:(自分のブログのアドレス)を検索するといい。
URL の修正後も、すぐに Google にインデックスされる。けれども、Google では、重複するコンテンツとみなされるためか、すでに Google にインデックスされている間違い URL のエントリーが表示され、修正した URL はどこにあるかもわからないことに。
たまたま、あるクエリに対する掲載順位でかなりの高位置にいた間違い URL をクリックしてもコンテンツがないという状況。これはまずいということで、対策として Google から間違い URL を削除することにした。
Google Search Console では、下記の場所から簡単に URL を削除することができる。
- ダッシュボード > Google インデックス > URL の削除
これがまたまずかった。
削除したのは、当初の誤って設定した URL のほうだったが、修正後の URL もなくなってしまったのだ。つまり、ここでも、重複コンテンツも表示しないというルールが適用されたものと推測できる。おかげで、ブログのコンテンツのほとんどがなくなってしまい、アクセス数がなくなった。
では、どうするか。
せっかくクリックしてくれたユーザーには、適切な記事を見てほしい。そこで 3 つの方法をご紹介。
タイトル下に誘導リンクを設置する
タイトル下に HTML をべた書き。上図のような感じにした。かっこわるいのと、正常な URL の際にも表示されてしまうのが難点。
適当に class を設定し、記事部分に合うように CSS で表示場所を設定。下記のソースは、公式テーマ Epic の例。
- ダッシュボード > デザイン > カスタマイズ > ヘッダ > タイトル下
<div class="under_head_wrapper"> <div class="under_head_main"> <div class="entry-content"> <p>ごめんなさい的なコメントとか。</p> <ul class="table-of-contents"> <li><a href="誘導したい URL">誘導したいエントリータイトル 1</a></li> <li><a href="誘導したい URL">誘導したいエントリータイトル 2</a></li> <li><a href="誘導したい URL">誘導したいエントリータイトル 3...</a></li> </ul> </div> </div> </div>
- ダッシュボード > デザイン > カスタマイズ > デザイン CSS
/* <タイトル下> */ .under_head_wrapper { width: 660px; float: left; padding: 0 30px; } .under_head_main { float: right; width: 500px; padding: 0 30px; margin: 0 0 30px 0; min-height: 100px; border:dotted 1px #888888; } /* </タイトル下> */
「class="entry"」と「class="entry-content"」は、デフォルトで設定されてある。記事部分のソースを転用しているので、もっときれいにも書けるだろう。
Google によるインデックスの整理は、定期的に行われているはずなので、間違い URL が表示されなくなったら、削除すればいいやということで。
404 ページをカスタマイズする
はてなブログで存在しない URL にアクセスすると「Not Found お探しの記事は見つかりませんでした。」というメッセージが表示される。
このメッセージが表示されるときにだけ呼びだすプログラムを設置する方法。下記のリンク先で詳しく説明されているので、割愛。
はてブの代わりにブログカードを挿入しようと思ったら、うまく表示されなかった。あと、プログラム自体は、404 ページ以外にも記述されていて、ちょっと重く感じた。ので、今回は採用しなかった。
ほっとく
実は、いちばん確実で、めんどうでない方法。Google がそのうち気づいて修正してくれるまで待つ。
よくよく考えたら即時性のある投稿なんてしないので、今回の一連、正解はこれかもしれない。
教訓
はてなブログで URL のカスタムを誤った投稿してしまった記事の URL は、Google Search Console で削除せず、ユーザーを適切に誘導するようにする。間違い URL は、そのうち消える。