どーすればよいかちょっと考えた。
方針
- まず前提としてHTMLファイルで全てのカテゴリを表示していること。
- カテゴリの横の()内に記事数が書いてある
- これをすべて足せば総記事数になるであろう。
1. seesaa blogの管理画面から
「デザイン」→「コンテンツ」→「カテゴリ」を選ぶ
2.カテゴリの「コンテンツHTML編集」を選ぶ
3.以下のように変更
変更前:
<div class="sidetitle"><% content.title %></div> <div class="side"> <% content.header -%> <% loop:list_category -%> <a href="<% category.page_url %>"><% category.name | tag_break %></a>(<% category.article_count | __or__ | echo("0") %>)<br /> <% /loop -%> <% content.footer -%> </div>変更後:
<div class="sidetitle"><% content.title %></div> <div class="side"> <% content.header -%> 総記事数:<span id="totalArticleCount"></span>件<br /> <% loop:list_category -%> <a href="<% category.page_url %>"><% category.name | tag_break %></a>(<span class="ccount"><% category.article_count | __or__ | echo("0") %></span>)<br /> <% /loop -%> <% content.footer -%> </div>これを保存する。
4.「デザイン」→「HTML」で現在利用しているHTMLを以下のように編集 </body>の直前に以下を入力
<script type="text/javascript"> <!-- var t=0; var s = document.getElementsByTagName("span"); for(var i=0 ;i<s.length;i++){ if (s[i].className=="ccount"){ t= t+parseInt(s[i].childNodes[0].nodeValue); } } var totalCount = document.getElementById("totalArticleCount"); totalCount.innerHTML=t; // --> </script>総記事数を表示する場所はまあどこでも選べそうなので4の部分を適当に変えればよいであろう。
そーすると、右のカテゴリが表示されている部分を見ていただければわかるように総記事数が表示されていると思う。
Internet Explorer 8 , Firefox3.5.2 , Google Chrome 2.0.172.43 では動いたよーだ。
まああまり重要はないかもしれんが、こんなこともできるってことで。
その他のSeesaaブログのカスタマイズ方法は以下のサイトを参考に。
テトラポッドと申します。
はじめての被リンクだったので、とても嬉しかったです。
ありがとうございました。
私もちょっと挑戦してみました。
↓こんなのはどうでしょうか?
<% content.title %>
<% content.header -%>
<% loop:list_category -%>
<% category.name | tag_break %>(<% category.article_count | __or__ | echo("0") %>)
<% /loop -%>
<% content.footer -%>
あるいは、↓こんなのはどうでしょうか?
<% content.title %>
<% content.header -%>
Home
<% loop:list_category -%>
<% category.name | tag_break %>(<% category.article_count | __or__ | echo("0") %>)
<% /loop -%>
<% content.footer -%>
※せっかくのネタなので、もしかしたら、自分のブログでも記事にしちゃうかもしれません。
そのときは、すみません。
すいません。
自分のブログのコメント欄でテスト投稿して問題なかったので、そのまま書き込んだのですが、いくつかタグが飛んで意味不明になってしまいました。
「<」「>」を全角にして再度投稿いたします。
↓こんなのはどうでしょうか?
<div class="sidetitle"><% content.title %></div>
<div class="side">
<% content.header -%>
<script language="JavaScript" type="text/javascript">document.write('総記事数 (' + (<% loop:list_category -%><% category.article_count | __or__ | echo("0") %> + <% /loop -%>0) + ')<br />');</script>
<% loop:list_category -%>
<a href="<% category.page_url %>"><% category.name | tag_break %></a>(<% category.article_count | __or__ | echo("0") %>)<br />
<% /loop -%>
<% content.footer -%>
</div>
<div class="sidetitle"><% content.title %></div>
<div class="side">
<% content.header -%>
<a href="<% blog.page_url %>">Home</a><script language="JavaScript" type="text/javascript">document.write(' (' + (<% loop:list_category -%><% category.article_count | __or__ | echo("0") %> + <% /loop -%>0) + ')');</script><br />
<% loop:list_category -%>
<a href="<% category.page_url %>"><% category.name | tag_break %></a>(<% category.article_count | __or__ | echo("0") %>)<br />
<% /loop -%>
<% content.footer -%>
</div>
また、上手く表示されてなかったら、すいません。
こめんといただきましてありがとうございます。
seesaa blogのカスタマイズ用の言語(script?)を使えばうまくできるのかなーと思ったりしたのですが、実はよくわかっていないので、無理やりspanタグのccountというクラスをつけて、それを数えるという手法にしてしまいました。
>※せっかくのネタなので、もしかしたら、自分のブログでも記事にしちゃうかもしれません。
どーぞ、どーぞ。
いまのところりょーちの方法でもなんとなく動いている感じがしますが、もしかしたらテトラポッドさんの方法に変更しちゃうかもです。
ではでは。
「カテゴリ」に記事の総数を表示するというのは私も考えたことがあるのですが、javascriptを使うという発想がでてきませんでした。
なんとか、seesaaのあの独特の記述方法で合計を出せないものかとばかり考えていたので、目からうろこでした。
これ、記事全体の総数だけでなく、サブカテゴリの記事の総数を、親カテゴリに表示するといったことも可能になると思います。
上手くまとまったら記事にしてみようかと思います。
>記事全体の総数だけでなく、サブカテゴリの記事の総数を、
>親カテゴリに表示するといったことも可能になると思います
classタグをうまくつけて計算させればいけるかもしれませんね。
>上手くまとまったら記事にしてみようかと思います。
期待してまーす。
できたらおしえてくださーい。
ではでは。
量が多いので、2つの記事に分割しました。
カテゴリに全記事数を表示
http://neon-tetra.seesaa.net/article/127825419.html
親カテゴリに記事数を表示
http://neon-tetra.seesaa.net/article/127825455.html
サブカテゴリの記事総数を表示する方は、複雑に見えるかもしれません。
前提となる「カテゴリのツリー化」が、[記事カテゴリ名][カテゴリ][記事][HTML]スタイルシートと、編集箇所がやたら多いので、採用される方が少ないと思います。
りょーち@管理人です。
記事を拝見いたしました。
編集箇所を減らすためにループカウンタなどを駆使できればいいんですけど、seesaaの仕様では難しいんですかねぇ・・・
でもいろいろ参考になりました。
今後も(こっそり)拝見させていただきます(^^;
ではでは。