はてなブログのTOPやアーカイブで表示される謎の自分のurlを消してみた
スポンサードリンク
はてなブログで過去記事を貼ったとき、下記画像のようにTOPやアーカイブページでは過去記事の内容は消えて自分のurlだけ表示されるのが謎でした。
これって自分だけなのかと思って別の方のはてなブログのアーカイブページを見ましたが同じようになっていたので、はてなブログ界ではしょうがないこととされている?のだろうと勝手に察しました。
記事一覧で過去記事が表示されないのは、いいのですがなぜfunclur.hatenablog.comという文字列だけ残る仕様なのかよくわかりませんでしたが、ソースを見てみると過去記事の部分はiframeを読み込んでいるようです。
恐らくですが記事一覧では、.entry-content内の文字列だけを読み込んで表示しているためリンクにもならずに上記画像のような表示になるのかと思います。
今まで容認していましたが、やはり間抜けな感じがしたので根本的な解決ではないですがjsで削除することにしました。
わからない方のためにコメントしております。
$(function(){ //htmlを読み込んでから実行 if( location.href === 'http://funclur.hatenablog.com/archive'){ //記事一覧ページの判定 var url = 'funclur.hatenablog.com'; //消したい文字列 var $description = $('.entry-description'); //記事一覧の文章を包括しているクラス $description.each(function(){ //.entry-descriptionそれぞれに実行 var txt = $(this).html(); //.entry-descriptionの中身 $(this).html(txt.replace(url, '' )); //.entry-descriptionの中身の指定した文字列を空にしなさいという命令 }); }); }
本当は、nativeなjavascriptで書いた方が実行スピード速いのですが、jqueryに頼っています。
同じように謎だなと感じている方は、やってみてください。
- クラス名は、テーマによって違う可能性があるので開発ツールで確認してみてください。
- というかはてなブログ側でこの仕様やめてほしい笑