ニートが学ぶプログラミング

ニートの日記。プログラムのことやら、くだらないこと、思ったことをまとめていきます。頑張って毎日更新するぞぉ_(:3」∠)_ 更新が連続して途切れたら察してください。

はてなブログをカスタマイズ(第1回)

こんにちは、鬱太郎です。今日でブログ開設してから10日が過ぎました。10日ではてなブログをいろいろカスタマイズしてきましたので、まとめてみようと思います。

f:id:neet-utsu-taro:20170907212631p:plain

テーマを変更しました

目次のCSSを変更しました

参考記事

mshitech.hatenablog.com

ありがとうございます!

目次のスタイルの変更方法

はてなブログの「デザイン」->「カスタマイズ」->「デザインCSS」 の欄に下記を追加

/* 目次に「目次」を追加 */
.table-of-contents:before{
 content: "目次";
 font-size: 120%;
 font-weight: bold; /* 文字の太さ */
}
/* 目次のカスタマイズ */
.entry-content .table-of-contents {
 background: #f8f8f8 ; /* 目次の背景色 */
 border-radius:5px; /* 目次の枠の角の丸さを調節 */
}

※上記コードは参考記事にあるえむしてっくさんのものです。著作権はえむしてっくさんに帰属します。

f:id:neet-utsu-taro:20170907231042p:plain

記事の始めと終わりに読者になるボタンを追加しました

「デザイン」->「カスタマイズ」->「記事」に記事の始めと終わりにHTMLを追加できます。しかし、ホームページに表示される記事には追加されません。ですので、記事作成の時に逐次入力する必要があります。proに登録してホームページから記事をクリックしないと中身が見れないようにすればいいのですが。

記事の先頭と末尾に以下を追加(コード例)

<iframe src="https://blog.hatena.ne.jp/neet-utsu-taro/neet-utsu-taro.hatenablog.jp/subscribe/iframe" allowtransparency="true" frameborder="0" scrolling="no" width="150" height="28"></iframe>

このコードは各自の「設定」->「詳細設定」の下の方にあります。

記事の終わりにTwitterのフォローボタンを追加しました

以下のサイトからフォローするをチェックし、HTMLコードをコピーして記事の末尾に貼り付けます。

Twitterボタン | About

(コード例)

<a href="https://twitter.com/neet_utsu_taro" class="twitter-follow-button" data-show-count="false">Follow @neet_utsu_taro</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>

サイドバーを整理しました

「デザイン」->「カスタマイズ」からサイドバーを選び項目を追加、並び替えができます。

サイドバーにTwitterのタイムラインを表示しました

参考記事

souken-blog.com

ありがとうございます!

Twitterタイムラインの表示方法

以下のリンクからTwitterのユーザー名(例: @neet_utsu_taro)を入力し、「Embedded Timeline」を選択し、HTMLコードをコピーします。

Twitter Publish

f:id:neet-utsu-taro:20170908140548p:plain f:id:neet-utsu-taro:20170908140613p:plain f:id:neet-utsu-taro:20170908140859p:plain

HTMLコードをコピーしたら、はてなブログの「デザイン」->「カスタマイズ」->「サイドバー」->「モジュールを追加」->「HTML」を順に選んで貼り付けましょう。

f:id:neet-utsu-taro:20170908141652p:plain

貼り付けたHTMLコードそのままですと、ものすごい縦長のタイムラインが作られるので、高さ制限を追加しましょう。ここでは700pxとしてますがお好みの高さに変更できます。

height="700px"

を「class=“twitter-timeline"」と「href=”…“」の間に追加しましょう。追加した結果は次のようになります。

<a class="twitter-timeline" height="700px" href="https://twitter.com/neet_utsu_taro">Tweets by neet_utsu_taro</a> <script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

サイドバーに追尾式の目次を設置しました

参考記事

twilyze.hatenablog.jp

ありがとうございます!

サイドバーに追尾式の目次を設置する方法

参考記事のリンク先にあるHTML、JSコードを「デザイン」->「カスタマイズ」->「サイドバー」->「モジュールを追加」->「HTML」に貼り付けましょう。

f:id:neet-utsu-taro:20170908143041p:plain

CSSコードは「デザイン」->「カスタマイズ」->「デザインCSS」に貼り付けましょう。

f:id:neet-utsu-taro:20170908145620p:plain

コードの変更

上記コードのままですと次のような不具合があります。1

f:id:neet-utsu-taro:20170908143208p:plain

「はてなブログをはじめよう!」?

これははてなブログに元からある見出しなのでしょう。

  • はてなブログ本体はh1~h3の見出しを使い、ユーザが記事に使う見出しはh4~h6のようです。私の勘違いです。申し訳ありません
  • コードがh3~h5の見出しを目次にするようになっている。(正しいです

ですので、コードを変更しましょう。ユーザーが使う見出しh4~h6を目次にするようにします。 私はMarkdown表記で記事を作っていたため、h3~h5を使うのが正常ということに気づけませんでした。なので以下の方法では直接的な解法とはなりません

1.見出しh4~h6を読み込むようにする

31行目

var SECTION_QUERY = 'h3,h4,h5';

var SECTION_QUERY = 'h4,h5,h6';

にします。

2.段落作成にh6を追加する

64行目からのifelse文

// 段落作成
if (self.nodeName.toLowerCase() == 'h4') {
    level = 1;
} else if (self.nodeName.toLowerCase() == 'h5') {
    level = 2;
}

にh6の段落を追加

// 段落作成
if (self.nodeName.toLowerCase() == 'h4') {
    level = 1;
} else if (self.nodeName.toLowerCase() == 'h5') {
    level = 2;
} else if (self.nodeName.toLowerCase() == 'h6') {
    level = 3;
}

します。

以上で目次の自動追尾が自分の記事の範囲内でできるようになります。

終わりに

ここまでご覧いただき、誠にありがとうございます。

ブログのカスタマイズは面白いですね!それだけで時間が過ぎていきます。参考にした記事の製作者様、本当にありがとうございます。いつか私も自分の力でカスタマイズできるモジュールを作れたらなと思います。

p.s.無駄にカスタマイズしすぎるとブログが重くなるのはご愛敬 (:3」∠)

追記:見出しをユーザーがh3~h5を使い、デザインもそれに対応していることに今気づきました。申し訳ありません。17/09/13 変更


  1. 作者さんが対応してくださったようです。そちらの方をご覧ください。