以前、追記の折りたたみについて書きましたが、今回はコメントです。
追記の折りたたみは小粋空間さんを参考にしましたが、もともとコメントの折りたたみも含んだスクリプトをコメント部分については削除されてるようです。
ですから、もともとのスクリプト(Scriptygoddessさんのサイト)を利用しました。
ただ、追記の折りたたみの表示部分はそのまま使えるように少し変更しました。
先ず、showhide.js を書き換えます。(私の場合は readmore.js としましたが)
function showHide(entryID, entryLink, htmlObj, type) {
if (type == "comments") {
extTextDivID = ('comText' + (entryID));
extLinkDivID = ('comLink' + (entryID));
} else {
extTextDivID = ('Text' + (entryID));
extLinkDivID = ('Link' + (entryID));
}
if( document.getElementById ) {
if( document.getElementById(extTextDivID).style.display ) {
if( entryLink != 0 ) {
document.getElementById(extTextDivID).style.display = "block";
document.getElementById(extLinkDivID).style.display = "none";
htmlObj.blur();
} else {
document.getElementById(extTextDivID).style.display = "none";
document.getElementById(extLinkDivID).style.display = "block";
}
} else {
location.href = entryLink;
return true;
}
} else {
location.href = entryLink;
return true;
}
}
追記の折りたたみの部分はそのまま使えるので、次にコメントの折りたたみ部分です。
テンプレートでモジュールを開き、モジュールを新規作成します。
テンプレート名 は、コメント とここではしておきます。
モジュールの内容は
<MTEntryIfAllowComments>
<div id="comLink<$MTEntryID$>">
<a href="<$MTEntryPermalink$>" name="com<$MTEntryID pad="1″$>" onclick="showHide(<$MTEntryID$>,'<$MTEntryPermalink$>',this,'comments');return false;"><b>コメント(<$MTEntryCommentCount$>) を見る</b></a></div>
<div id="comText<$MTEntryID$>" style="display: none">
<a href="<$MTEntryPermalink$>" name="com<$MTEntryID pad="1"$>" onclick="showHide(<$MTEntryID$>,0,this,'comments');return false;"><b>コメントを隠す</b></a>
<hr>
<MTComments>
<div class="comment" id="comment-<$MTCommentID$>">
<div class="comment-inner">
<div class="comment-header">
<$MTCommentAuthorLink default_name="匿名" show_email="0"$><MTIfNonEmpty tag="CommentAuthorIdentity"> <$MTCommentAuthorIdentity$></MTIfNonEmpty>:
</div>
<div class="comment-content">
<$MTCommentBody$>
</div>
<p class="comment-footer">
投稿者:
<$MTCommentAuthorLink default_name="匿名"$> <$MTCommentAuthorIdentity$>|
日時:
<a href="#comment-<$MTCommentID$>" title="このコメントへのパーマリンク"><$MTCommentDate format="%x %H:%M"$></a>
</p>
</div>
</div>
<br />
</MTComments>
<a href="#entry-<$MTEntryID$>" onclick="showHide(<$MTEntryID$>,0,this,'comments');return
true;"><b> "<$MTEntryTitle$>"へ戻る</b></a>
</div>
</MTEntryIfAllowComments>
として保存します。
メインページを開いて
</MTEntryIfTagged> の下あたりに
<MTIfNonZero tag="MTEntryCommentCount">
<br />
<$MTInclude module="コメント"$>
</MTIfNonZero>
と記述します。
<MTIfNonZero> タグは、文字通り”0でなければ表示する”ので、この場合、コメント数を調べて”0”の場合は表示しません。
以上です。
こんな感じになりました。↓
(個別アーカイブでは表示しません。メインページで確認してください)
コメント (1)
コメントテスト
コメントが無いブログでする記事ではない! というオチだったりして(笑)
投稿者: muku@管理人 | 2007年05月31日 22:31
日時: 2007年05月31日 22:31