スポンサーサイト

今日は何位かな?→人気ブログランキングに参加しています♪

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


このエントリーを含むはてなブックマーク Buzzurlにブックマーク livedoorクリップ Yahoo!ブックマークに登録

スポンサー広告 | 【--------(--) --:--:--】 | Trackback(-) | Comments(-) | [編集]

FC2ブログでサブカテゴリを作ってみる

今日は何位かな?→人気ブログランキングに参加しています♪

他のFC2ブログにお邪魔したら、
サブカテゴリがあるではありませんか。。。


livedoorブログの特権だと勝手に思いこんでいたサブカテゴリ、
FC2ブログでもやってみました。


1.カテゴリを下記の形式に書き換えます。

・{メインカテゴリ}サブカテゴリ

1つでもこの形式外になってはダメという記載もありましたが、
いつもお世話になってる鷹さんのブログでは表示されているので
とりあえずメインカテゴリだけでも設定しておけばよさそうです。


すぐにサブカテゴリが思いつかない場合には
メインカテゴリだけでも表記してください。


2.以下のソースをテンプレートのhtmlの<body>~</body>の間に貼り付けます。

<script type="text/javascript">
<!--
function makeTreeElements (idName,objList) {
if (!objList.innerHTML) return;
var objLink = objList.getElementsByTagName('a')[0];
var linkUrl = objLink.getAttribute('href');
if (idName.indexOf('comment') > -1 || idName.indexOf('tb') > -1) {
var tmpText = objList.innerHTML.split("⇒");
tmpText[0] = tmpText[0].slice(0,tmpText[0].search(/
this.base = Array('<a href="',linkUrl,'">',tmpText[0],'</a>').join('');
this.elem = objLink.innerHTML;
} else if (idName.indexOf('entry') > -1) {
var tmpText = objList.innerHTML;
tmpText.match(/\((\d\d\/\d\d)\)/);
this.base = Array('<strong>',RegExp.$1,'</strong>').join('');
this.elem = Array('<a href="',linkUrl,'">',objLink.innerHTML,'</a>').join('');
} else if (idName.indexOf('link') > -1) {
var tmpText = objList.innerHTML;
if ( tmpText.match(/\[(.+)\](.+)/) ) {
this.base = Array('<strong>',RegExp.$1,'</strong>').join('');
this.elem = Array('<a href="',linkUrl,'" target="_blank">',RegExp.$2,'</a>').join('');
}
} else if (idName.indexOf('category') > -1) {
var tmpText = objList.innerHTML;
if ( tmpText.match(/\[(.+)\](.+)/) ) {
this.base = Array('<strong>',RegExp.$1,'</strong>').join('');
this.elem = Array('<a href="',linkUrl,'">',RegExp.$2).join('');
}
} else if (idName.indexOf('archive') > -1) {
var tmpText = objList.innerHTML;
tmpText.match(/\((\d+)\)/);
var tmpCnt = Array(' (', RegExp.$1, ')').join('');
tmpText = objLink.innerHTML;
tmpText.match(/(.+) (\d+)/);
this.base = Array('<strong>',RegExp.$2,'</strong>').join('');
this.elem = Array('<a href="',linkUrl,'">',RegExp.$1,'</a>', tmpCnt).join('');
}
return this;
}
function createTreeList(idName,option) { // version 2.2
var objFocus = this.document.getElementById(idName);
if (!objFocus) return;
if (!objFocus.innerHTML) return;
var objLists = objFocus.getElementsByTagName('li');
var linkList = new Array();
var outText = new Array();
if (objLists.length > 0) {
for (i=0;ivar chckFlag = true;
var elemText = new makeTreeElements(idName,objLists[i]);
if (!elemText.base || !elemText.elem) return;
for (j=0;jif ( linkList[j].base.indexOf(elemText.base) > -1 ) {
chckFlag = false;
linkList[j][linkList[j].length] = elemText.elem;
}
}
if (chckFlag) {
var tmpNum = linkList.length;
linkList[tmpNum] = new Array();
linkList[tmpNum][0] = elemText.elem;
linkList[tmpNum].base = elemText.base;
}
}
if (linkList.length > 0) {
outText[outText.length] = '<ul>\n';
for (i=0;ioutText[outText.length] = Array('<li>',linkList[i].base,option.top).join('');
if (linkList[i].length > 0 && option.sort) linkList[i].reverse();
for (j=0;joutText[outText.length] = (j == linkList[i].length - 1) ? option.end : option.list;
outText[outText.length] = Array(linkList[i][j],option.leef).join('');
}
outText[outText.length] = Array(option.btm,'</li>').join('');
}
outText[outText.length] = '</ul>\n';
objFocus.innerHTML = outText.join('');
}
}
}



var gTreeOption = new Array;
gTreeOption['sort'] = false; /* ツリー内の表示順 true:並び替える false:そのまま */
gTreeOption['list'] = '├ '; /* ツリー用マーク(通常) */
gTreeOption['end'] = '└ '; /* ツリー用マーク(末端) */
gTreeOption['leef'] = '<br />\n'; /* 各枝の末尾 */
gTreeOption['top'] = '<br />\n'; /* ツリー本体の最初 */
gTreeOption['btm'] = ''; /* ツリー本体の最後 */
createTreeList('newentrylist',gTreeOption); // 最新エントリリストのツリー化
createTreeList('entrylist',gTreeOption); // エントリリストのツリー化
createTreeList('commentlist',gTreeOption); // 最新コメントリストのツリー化
createTreeList('tblist',gTreeOption); // 最新トラックバックリストのツリー化
createTreeList('linklist',gTreeOption); // リンクリストのツリー化
createTreeList('categorylist',gTreeOption); // カテゴリリストのツリー化
// -->
</script>



最後にカテゴリのプラグインを

<div id="categorylist">
<ul>
<!--category-->
<li>a href="<%category_link>"><%category_name>(<%category_count>)</a></li>
<!--/category-->
</ul>
</div>


に書き換えると完成です。


これで個人的に一気にカテゴリが見やすくなりました^^
記事に表示される場合は、{}が付いたままになるのがデメリットですが、
カテゴリの表記上は問題ないと思います。


お好みでどうぞ。

このエントリーを含むはてなブックマーク Buzzurlにブックマーク livedoorクリップ Yahoo!ブックマークに登録

[FC2]FC2ブログ | 【2009-03-05(Thu) 21:53:28】 | Trackback:(0) | Comments:(3) | [編集]
コメント
いつもお世話になっております。真田 ゆたかです。


今回の記事は、ブログをカスタマイズしたい方には

非常に解りやすい記事ですね。



このような書き方をして頂けると

読む側としては、助かります^^


次回の記事も楽しみにしてます。


では また来まぁーす!


応援ポチ★
2009-03-05 木  22:22:06 | 真田 ゆたか [編集]
こんばんは、ZIGです。

MJPではありがとうございました^^
サブカテゴリ、あるとすごい見やすいですよね。
ライブドアブログなのにやってない・・・^^;

応援ポチです♪

またお邪魔します^^
2009-03-05 木  23:13:11 | ZIG@初心者がネットで稼ぐ方法 [編集]
えあさん、はに~♪

菜乃です。

なあるほど、これにしたのね。^^

カテゴリー、サブカテゴリーどころか
ぐちゃぐちゃしていて…。(ノ∀`*)

そろそろきちんと分けないと
自分でもわけがわからなくなりそうです。

ソースコード、ありがとう♪

応援ぽちっ☆
2009-03-06 金  17:49:09 | 菜乃@コツコツアフィリエイター [編集]
コメントの投稿


管理者にだけ表示を許可する

トラックバック

この記事にトラックバックする(FC2ブログユーザー)


Copyright © ホームページ&ブログ作成tips All Rights Reserved. Powered By FC2. 
skin:*cuteblog*   
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。