最近の記事のツリー化をつくりたい!

『最近の記事のツリー化の見本』
【参考記事】
「ヒヨコ君増殖中 恋 FC2版」様:クリスマスツリーに肖ってツリー化の手引き
「JUGEMカスタマイズ講座」様;ツリー化スクリプト ver 2
「まめの一言(JUGEM出張所)」様;ツリー化スクリプトのカテゴリ・アーカイブ対応
「ワンダと巨像と土と空」様;最新エントリのツリー化手順
最初にテンプレートの設定からHTMLの編集を開きます。そして一番下までスクロールさせていって下さい。すると一番下ぐらいに</body>というのが見つかると思います。見つからなかったら「Ctrl」+「F」を使って検索してみて下さい。
このブログでは・・・
<!-- **********mabody_ED********** -->
</body>
</html>
このまま使うとツリーの部分が⇒になるのでこのブログの様にしたければ、下のほうにある、<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>
gTreeOption['list'] = '⇒ '; /* ツリー用マーク(通常) */
gTreeOption['end'] = '⇒ '; /* ツリー用マーク(末端) */
を通常の方を├に末端の方を└に張り替えて下さい。
※先にコメント・トラックバック・リンクのツリー化をした人で、後から最近の記事もツリー化する場合、若干違うので、こちらのものに張り替えてください。
このブログを例にすると、
<!-- **********mabody_ED********** -->
<script type="text/javascript">
<!--
〜〜〜〜〜〜〜〜
// -->
</script>
</body>
</html>
次に管理画面の[プラグインの設定]→[最近の記事]の[HTMLの変更]をクリックします。
<!--recent-->
<li &align>
<a href="<%recent_link>" title="<%recent_title>"><%recent_title> (<%recent_month>/<%recent_day>)</a>
</li>
<!--/recent-->
</ul>
これを全部削除して下記のものに置き換えます。
張り替えましたら[変更]ボタンを押して下さい。<div id="newentrylist">
<ul>
<!--recent-->
<li><%recent_etitle><br /><a href="<%recent_link>" title="<%recent_body>"><%recent_title></a>(<%recent_month>/<%recent_day>)</a></li>
<!--/recent-->
</ul>
</div>
そして自分のブログを確認してみて下さい。ツリー化ができていると思います。
この方法はプラグイン対応のテンプレートの人が対象です。もしプラグイン非対応のテンプレートを使っている人はテンプレートの設定のHTMLの編集にある最近の記事の該当場所にプラグインに張るものと紹介した物に書き換えて下さい。
プラグインがよくわからない人はプラグインって何?を読んでみて下さい。
できたので「ワンダと巨像と土と空」のNICO(にこ)さんにお礼を言に行く。
[○○](←記事の更新日)
├××
└××
となっている[○○]の部分の太字を普通の太さにしたい人や、[ ]をなくしたい人は、一番最初に</body>の前に設置した・・・
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('');
この4つの部分の赤字の部分を削除すると普通の太さに、青字の部分を削除すれば[ ]はなくなります。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('');
このブログの様に点線のツリー化にしたい人は、JUGEMカスタマイズ講座さんのツリー化カスタマイズ応用編にわかりやすく説明されています。
- 関連記事 ; カテゴリーのツリー化をつくりたい!
- 関連記事 ; 最近のコメントのツリー化をつくりたい!
- 関連記事 ; 最近のトラックバックのツリー化をつくりたい!
- 関連記事 ; リンクのツリー化をつくりたい!
http://rgrg.blog61.fc2.com/tb.php/167-af2e9879









