Seesaaブログにグローバルナビを設置する方法【新システム】

この記事はSeesaaブログの新デザインシステム版です。旧システムを利用している方はこちらの記事を参考に。
シーサーブログにグローバルナビを設置する方法

今回はシーサーブログにグローバルナビを設置するカスタマイズ【新システム版】です。ナビゲーションメニューとも言います。このグローバルナビを設置しておけば主要なページへ誘導する事もできますし、訪問者もクリックしてくれる確率の高い部分です。

私の場合はそれぞれのカテゴリーで目次ページを作って主要なページへのリンクをグローバルナビに追加しています。ちなみにグローバルナビを設置するとこのようになります。

グローバルナビ-1

もちろん色や大きさなどはスタイルシート(CSS)で変更できます。それでは早速手順を紹介していきましょう。

グローバルナビ設置の前準備

グローバルナビを設置する前にグローバルナビにいくつの項目を作るかを考えておく必要があります。あまり多くしすぎるとメニュー名が入らなくなりますし、長すぎるタイトルはすべて表示できないので4つか5つがおすすめです。

項目の数を決めたら自分のブログの幅を確認しておきましょう。すでに別記事「Seesaaブログの幅を変更する方法【新システム】」で横幅を変更した方は全体の幅を確認しておくとスムーズに進みますので「.l-wrapper」という部分の「width」で横幅を設定した数字を覚えておいて下さいね。

ブログの幅を変更していない方は「デザイン」⇒「デザイン設定」⇒「適応中のデザインタイトル」をクリックして「.l-wrapper」という部分の「width」に書かれている数字をメモしておきましょう。

デザインによって違いますが、多分デフォルトだと「980px」か「960px」になっている物が多いかなと思います。

Seesaawidth-1

グローバルナビを設置する方法

シーサーブログの管理画面から「デザイン」⇒「デザイン設定」⇒「適応中のデザインタイトル」を選択します。

新デザインパンくず-1

上のタブで「HTML編集」のタブに切り替えます。

新デザインパンくず-2

するとHTMLコードがズラリ並んでいるのでその中から次のコードを探します。このテンプレートだと17行目から22行目付近。

<header role="banner" class="l-header">
		<div class="header">
			<h1><a href="<% blog.page_url -%>"><% blog.title -%></a></h1>
			<p class="description"><% blog.description | nl2br | mark_raw -%></p>
		</div>
	</header>

このコードの下に次のコードを追加します。

<!--グローバルナビゲーション開始-->
<div id="navi-bar">
<ul class="menu">
<li><a href="#" target="_blank">メニュー1</a></li>
<li><a href="#" target="_blank">メニュー2</a></li>
<li><a href="#" target="_blank">メニュー3</a></li>
<li><a href="#" target="_blank">メニュー4</a></li>
<li><a href="#" target="_blank">メニュー5</a></li>
</ul>
</div><!--navi-bar終了-->
<!--グローバルナビゲーション終了-->

別記事のカスタマイズ「シーサーブログにパンくずリストを設置する方法【新システム】」でパンくずを設置している場合はこのコードの下にパンくずリストのコードが来ます(グローバルナビの下にパンくずを設置するので)。

「#」の文字の所に、ボタンクリック時にジャンプするページのURLを(#を消して)書き込んで下さい。

それから「メニュー1」から「メニュー5」には、そのボタンに表示する文字を記入します。一応メニューを5つ書いておきましたが同じように「li」と「/li」で囲んで追加してもOK、減らしても大丈夫です。

以上追加できたら「保存」です。この状態だとまだナビが縦に並んでいると思うので、スタイルシートでこれを横並びにして位置調整をしていきましょう。

グローバルナビを横並びにして位置調整

先ほどは「HTMLの編集」でグローバルナビを設置したので、残りはスタイルシートで調整していきますよ。先ほど同様にseesaaブログの管理画面から「デザイン」⇒「デザイン設定」⇒適応中のデザインタイトルをクリック。

新デザインパンくず-1

次の画面で今度は「スタイルシート編集」というタブが選択されている事を確認します。

新デザインパンくず-3

スタイルシートのコードがズラリ並んでいますが、一番下までスクロールして次のコードを追加。

/*グローバルナビゲーション設置場所*/
#navi-bar {
 margin-top:0px;
 padding:0;
}
#navi-bar ul.menu{
  margin:0;
  padding:0;
  list-style: none;
}
#navi-bar ul.menu li{
  display:inline;
}
 
#navi-bar ul.menu li a{
  display:block;
  float:left;
  margin:0;
  padding:0;
  white-space:nowrap;
  overflow:hidden;
  text-align:center;}
#banner{margin-bottom:0px;}

最初の方にある「margin-top」の数値を大きくすれば下にずらす事もできます。追加できたらさらに下に今度は位置調整のコードを追加。

/* ▼▼▼ 位置・サイズ調整 */
#navi-bar{max-width:960px;}   /* メニュー全体の幅 */
#navi-bar ul.menu li a{
  width:20%;            /* ボタンの幅 */
  line-height:30px;       /* ボタンの高さ */
  font-size:14px;         /* ボタンの文字サイズ */
}

ここのメニュー全体の幅「max-width:960px」という部分には最初に確認したブログの全体幅を記入します。それと、全体の幅(100%)に対するボタンの幅の割合を「%」で記述します。

この例の場合は5つのボタンを設置するので100%÷5=20%という計算になるので「ボタンの幅」は20%となっている訳です。4つのボタンなら25%になりますよね。

続いて最後に次のコードをさらに追加。

/*▼▼▼ 色・文字装飾・背景など */
#navi-bar ul.menu li a{         /* 通常時 */
  color:#ffffff;                /* 文字色(白) */
  font-weight:bold;             /* 太字 */
  text-decoration:none;         /* 下線(なし) */
  background-color:#1F5E73;     /* 背景色(藍色) */
  background-image:url();       /* 背景画像 */
  background-repeat:repeat;     /* 背景画像繰り返し */
}
#navi-bar ul.menu li a:hover{  /* カーソルが乗った時 */
  color:#ffffff;               /* 文字色(白) */
  font-weight:bold;            /* 太字 */
  text-decoration: underline;  /* 下線(あり) */
  background-color:#1F5E73;    /* 背景色(藍色) */
  background-image:url();      /* 背景画像 */
  background-repeat:repeat;    /* 背景画像繰り返し */
}
#navi-bar:after{  /* 横並びの解除 */
  content:"";
  display:block;
  clear:both;
}

横に書かれた説明を見ながら自分の好きな色を指定すればOK。また、背景に画像を使う場合は画像のURLを background-image:urlの後の( )の中に入力して下さい。

ここまででグローバルナビの設置はできましたが、実際に見てみると下のコンテンツ(サイドバーとか記事タイトル)との間隔が狭いです。

新デザインパンくず-4

という訳でこれにも対処していきます。具体的にはサイドバーや記事タイトルと本文を含むコンテンツの上に余白を作ります。

先ほどコードを追加した「スタイルシート」に更に追加。

.l-content {
  margin-top: 30px;
}

一応30pxの余白にしていますが、これは自分で好きな数値に変更しておいて下さいね。以上でグローバルナビの設置は完了。

もしナビゲーションとヘッダー画像の間に余白が出来る場合には次のコードも追加して試して下さい。

.l-header {
    margin-bottom: 0px !important;
}

次回はブログの検索順位に重要なパンくずリストを設置する方法について紹介していきます。

Seesaaブログにグローバルナビを設置する方法【新システム】”に34件のコメントがあります。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。

  1. 茶風

    しげぞう様
    いつも迅速な対応ありがとうございます。
    記述削除で理想のグローバルナビになりました。
    本当にいつも感謝しております。ありがとうございました。

  2. しげぞう 投稿作成者

    茶風様

    コメント、URLの提示もありがとうございます。推測なんですが、多ナビの部分の広さをpxで指定しているからかな?と思います。
    CSSの以下の部分です。

    #navi-bar {
        max-width: 1550px;
    }

    この部分の1550pxを例えば9999pxとかに変更して解決するか確認してもらえますか?もしくはmax-width:1550pxという記述を削除してもいいかもしれません。

    ちょっとやってみないとわかりませんが、上記試してみて下さい。

  3. 茶風

    しげぞう様
    お世話になっております。
    相談があります。
    グローバルナビの設置はできているのですが、ブラウザの拡大表示を70%や60%など、100%より小さくするとグローバルナビが左側にくっついてしまっています。
    常に中央に設置したいのですが、どの数字を変更したらいいのか分かりません。
    お忙しいところ恐縮ですがよろしくお願い致します。

  4. ボックル

    しげぞう様
    昨日、張り替え作業後はすぐは反映されていませんでしたが、今朝は反映されていました。
    本当に長々と親切に教えてくださりありがとうございました。

  5. ボックル

    しげぞう様
    毎度すみません。
    張り替えてみましたが、反映されません。
    プレビューでの画面では反映されているのですが・・・ページを進めると反映されていません。
    (T_T)

  6. しげぞう 投稿作成者

    ボックル様

    返信ありがとうございます。やはり原因はわかりませんが、スペースがあると上手くいかない感じですね、CSSに追加している「グローバルナビゲーション設置場所」と記述した部分から下を一度削除して、スペースを抜いたコードに張替えてみましょうか?

    スペースを抜いた代替コードですので、こちらをCSSにコピペしてみて下さい。

    /*グローバルナビゲーション設置場所*/
    #navi-bar {
    margin-top:0px;
    padding:0;
    }
    #navi-bar ul.menu{
    margin:0;
    padding:0;
    list-style: none;
    }
    #navi-bar ul.menu li{
    display:inline;
    }
    #navi-bar ul.menu li a{
    display:block;
    float:left;
    margin:0;
    padding:0;
    white-space:nowrap;
    overflow:hidden;
    text-align:center;}
    #banner{margin-bottom:0px;}
    /* ▼▼▼ 位置・サイズ調整 */
    #navi-bar{max-width:960px;}
    #navi-bar ul.menu li a{
    width:20%;
    line-height:30px;
    font-size:14px;
    }
    /*▼▼▼ 色・文字装飾・背景など */
    #navi-bar ul.menu li a{
    color:#ffffff;
    font-weight:bold;
    text-decoration:none;
    background-color:#1F5E73;
    background-image:url();
    background-repeat:repeat;
    }
    #navi-bar ul.menu li a:hover{
    color:#ffffff;
    font-weight:bold;
    text-decoration: underline;
    background-color:#1F5E73;
    background-image:url();
    background-repeat:repeat;
    }
    #navi-bar:after{
    content:"";
    display:block;
    clear:both;
    }
    .l-content {
    margin-top: 30px;
    }
    .l-header {
    margin-bottom: 0px !important;
    }

    これで反映されないなら再度コメント下さいね!もう少し諦めずに修正すれば上手くいくと思いますので、遠慮しなくてOKです(^o^)

  7. ボックル

    しげぞう様
    何度もすみません。
    スペースを消してみましたが反映されませんでした。
    お手数をかけて本当にすみません。

  8. しげぞう 投稿作成者

    ボックル様

    返信ありがとうございます。ちょっとチェックしてみたのですが、おそらく同じスペースが原因かと思います。スペースの場所はCSSから下記の記述を探します。

    #navi-bar ul.menu li{
    display:inline;
    }
      ←ここのスペースを削除する
    #navi-bar ul.menu li a{
    display:block;
    float:left;
    margin:0;
    padding:0;
    white-space:nowrap;
    overflow:hidden;
    text-align:center;}
    #banner{margin-bottom:0px;}

    矢印でここを削除って書いている部分のスペースを削除して反映されるか確認をしてみて下さい。

  9. ボックル

    しげぞう様
    分かりやすい説明ありがとうございました。
    スペースを消してみたところ、縦並びから横並びへと変わりましたが、しげぞう様のグローバルナビの表示のされ方へとは違っていて・・・。
    この解決策を教えていただけないでしょうか?
    よろしくお願いします。

  10. しげぞう 投稿作成者

    ボックル様

    コメントとURLもありがとうございます。CSSの記述が反映されていない感じですね、これはおそらくコピペでのエラーというか最近なぜかこういうの多いのですが、コピペが上手く反映できていない?感じというか、余計な文字が含まれてたりします。原因はよく分かりませんが対処としては以下を試してみて下さい。

    グローバルナビでCSSに記述を追加していると思いますが、このスペースを消していきます(CSSの記述だけ)。

    例えばナビ付ける時に下記のような記述を追加していると思います。

    #navi-bar {
      margin-top:0px;
      padding:0;
    }

    この「margin」とか「padding」とかの前(左の所)に透明の半角のスペースが幾つか入っていると思います。これを消してこんな感じに。

    #navi-bar {
    margin-top:0px;
    padding:0;
    }

    上記のようにナビ用のCSS記述のスペース部分を消してみて反映されるか試してもらえますか?もしそれでも反映されない場合には再度コメント下さい(^o^)

  11. ボックル

    はじめまして。
    いつも勉強させてもらっています。
    グローバルメニューを作りたいのですが何度やってもうまくいかず、同じような質問を見てはみたのですが、自分が初心者すぎて理解できませんでした。
    どう改善していいのか全く分かりません。
    アドバイスを頂けないでしょうか。

  12. はねうさぎ

    しげぞう様

    いつも参考にさせていただいています。
    グローバルナビゲーションを設定できたのですが、クリックしてみると、別ウィンドウが新規開いてそちらに飛ばされてしまいます。ですので、同じカテゴリーを何度もクリックすると、同じ新規ページがいくつも開いてしまう状態になってしまっています。

    ブログについている「カテゴリ」を表示し、カテゴリの中のリンクをクリックしても新規ウィンドウは開かずに同じブログの中を回遊できるのですが、グローバルナビゲーションのカテゴリーをクリックしたときに、新規ウィンドウは開かせずにブログの中でリンクさせる方法はありますでしょうか?
    どうぞよろしくお願いいたします。

  13. しげぞう 投稿作成者

    しょうた様

    コメントありがとうございます。プレビューで反映されている場合にはブログを表示させてリロードしたら解決するする場合があります。以前のデータが残っているだけなので。また、念のため、別のブラウザでも確認してみる事をおすすめします。ブラウザ自体にキャッシュ(以前のデータ)が残っている場合もありますので、別ブウウザで反映されるなら大丈夫です。

    もしリロード(再読込み)とか別ブラウザでも反映されないという場合には一度変更したコードを元に戻し(削除して)保存。それで再度コードを追加して保存で反映される場合があります。