ページ: 1
表題の様なことをしたいという要望を小耳に挟んだのですが、こんな感じでどうでしょうか。
"コメント (ある場合)" テンプレートに
<a href="nucleus/index.php?action=banlistnew&blogid=<%blogid%>&ip=<%ip%>"><%ip%>をNGに</a>
このままだと一般閲覧者にも丸見えでブサイクなので
作戦1:
テンプレートでif使える系プラグインを使用してloggedinの時だけ表示
作戦2:
スキンに
<div class="comment1">
<%comments(main)%>
</div>
<%if(loggedin)%>
<div class="comment2">
<%comments(ipban)%>
</div>
<%endif%>
てな具合で、cssで見やすくがんばる
作戦3:
スキンに<%if(loggedin)%>でdisplay:none切り替え
(ソースには表示されてしまいますが)
ホントは、コメントのテンプレートで<%edit%>が使えればスマートなんですがねぇ。
<%edit%>はログイン中だけ表示されるテンプレートとして、<%editlink%>等以外にも使えて何かと便利。
ログイン中だけ投稿者名表示したりとか。
オフライン
NP_CommentEdit.phpの「doTemplateCommentsVar」メソッドにちょこっとコードを差し込んでやる方法もあります。
こんな風に書き換えればOK
function doTemplateCommentsVar(&$item, &$comment, $type, $param1 = 'QQQQQ') {
global $CONF, $member;
if ($member->isLoggedIn()) {
$commentid = intval($comment['commentid']);
if ($member->canAlterComment($commentid)) {
$editLink = $CONF['AdminURL']
. 'index.php?action=commentedit&commentid='
. $commentid;
$delLink = $CONF['AdminURL']
. 'index.php?action=commentdelete&commentid='
. $commentid;
$banLink = $CONF['AdminURL']
. 'index.php?action=banlistnew&blogid='
. intval($comment['blogid']) . '&ip=' . $comment['ip'];
$printData = "<small>\n"
. '[ <a href="' . $editLink . '" target="_blank"> '
. _LISTS_EDIT . "</a> ]\n"
. '[ <a href="' . $delLink . '" target="_blank"> '
. _LISTS_DELETE . "</a> ]\n"
. '[ <a href="' . $banLink . '" target="_blank"> '
. _LIST_COMMENT_BANIP . "</a> ]\n"
. "</small>\n";
echo $printData;
}
}
}
これで「IPアドレスを規制」ってリンクが出てくるはずです。
オフライン
ページ: 1