スポンサーサイト

--.--.--(--:--)
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
☆BBSへ☆
ブログTOPへ
スポンサー広告 | トラックバック(-) | コメント(-) | [EDIT]

カテゴリーのツリー化

2005.07.20(09:27)
私の左サイドバーにあるカテゴリー、ツリー化にしてみました。
それでは早速紹介します。 1.javascriptを設置
管理画面で「テンプレートの設定」のページを開き、現在設定しているテンプレートの「修正」をクリック。

  HTMLの編集でソースの最後の方、
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
の手前に以下の内容を挿入します。

<!--ツリー化スクリプトここから--> 
<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(/<BR/i)); 
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;i<objLists.length;i++) { 
var chckFlag = true; 
var elemText = new makeTreeElements(idName,objLists[i]); 
if (!elemText.base || !elemText.elem) return; 
for (j=0;j<linkList.length;j++) { 
if ( 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;i<linkList.length;i++) { 
outText[outText.length] = Array('<li>',linkList[i].base,option.top).join(''); 
if (linkList[i].length > 0 && option.sort) linkList[i].reverse(); 
for (j=0;j<linkList[i].length;j++) { 
outText[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> 
<!--ツリー化スクリプトここまで--> 


2.カテゴリ表示の部分を変えます

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


上のようになってると思いますが、それを


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


に直してください。
プラグインの方は、管理画面で「プラグインの設定」のページを開き、カテゴリーの「HTML編集」を開いて同じように直してください。

3.カテゴリー名の修正 管理画面で「カテゴリーの編集」を開きます。
現在あるカテゴリーを全て、[ASPなど]ASPに関係するカテゴリ名に修正してください。

※[]は必ず半角にすること。
全角だとダメみたいです。
※また、一つでも[見出し(ASPなど)]カテゴリ名の形に直していないのがあると、うまくいかないので必ず全部修正してください。
(ちなみに、私は1つ修正し忘れて、何で~?ということになりました。)

これでツリー化、できるはずですよ。
よかったら、お試しくださいね~♪
スポンサーサイト




アフィリエイトランキングの応援お願いします
人気blogランキング
有名ブログランキング
週刊blogランキング
ブログ村ランキング
☆BBSへ☆
ブログTOPへ
[役に立つ]テンプレートカスタマイズ | トラックバック(-) | コメント(-) | [EDIT]
| ホームへ |
ランキング参加中
カテゴリー
まずは口座開設

  • eBANK
  • ジャパンネット銀行

    キャッシングの比較サイト

  • リンクスタッフ
    ポイントサイト
    クリック保証
    アンケート
    アクセスアップ
    リードメール
    プロフィール

    • 名前:maiko
    • 10月21日生まれ。
      主婦暦3年
      猫のチョコちゃんとのんびり暮らしています。

    リンク
    ブロとも申請フォーム
    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。