首先我承认,我已经着了wp的魔,不折腾一下心里就痒痒的。不过我的折腾比起那些大师们可差远了,我只是小打小闹,拿别人的照抄,嘿嘿。

我是一个比较喜欢细节的人,所以做的都是一些微不足道的东西,可有可无,但是我从这些过程中学习到了很多,也得到了很多快乐!入正题:

1、为wp主评论及子评论加上楼层号,支持评论分页(方法转自zwwooooo

这里分为正序显示评论和倒序显示评论的评论(各位按需取用)。

前提要求:

1. 当然是要在 WordPress 后台开启嵌套评论啦
2. 所用主题支持嵌套(目前的主题基本都支持吧)
3. 主题有使用 mytheme_comment 回调函数

为主评论添加楼层号(正序)

先在主题的function.php中找到mytheme_comment函数,下边是我的主题的相关代码(供参考):

function custom_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;

//主评论计数器初始化 begin - by zwwooooo
global $commentcount;
if(!$commentcount) { //初始化楼层计数器
$page = get_query_var('cpage')-1;
$cpp=get_option('comments_per_page');//获取每页评论数
$commentcount = $cpp * $page;
}
//主评论计数器初始化 end - by zwwooooo

?>
<li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
<div id="comment-<?php comment_ID(); ?>">
<div>
<?php echo get_avatar( $comment, $size = '28', $default = get_bloginfo('template_directory') .'/images/avatar.png' ); ?>
<div>
<?php printf(__('<cite>%s</cite>'), get_comment_author_link()) ?> <?php edit_comment_link(__('(Edit)'),'  ','') ?><br />
<em><?php printf(__('%1$s at %2$s'), get_comment_date('Y/m/d '),  get_comment_time(' H:i:s')) ?>
<?php if(!$parent_id = $comment->comment_parent) {printf('
@ <em2>%1$s楼</em2>', ++$commentcount);} ?></em>
</div>
<div>
<?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
</div>
</div>
<?php if ($comment->comment_approved == '0') : ?>
<em><?php _e('Your comment is awaiting moderation.') ?></em>
<br />
<?php endif; ?>
<?php comment_text() ?>
</div>
<?php } ?>

上边代码中,红色标注的部分为需要修改的部分,当然显示楼层号的位置各位可自己修改。至于原理我就不说了,也不会说...

为主评论添加楼层号(倒序)

放上我的相关代码(大家可以看到我用的是倒序的评论显示)

function custom_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;

/* 主评论计数器 by zwwooooo */
global $commentcount,$wpdb, $post;
if(!$commentcount) { //初始化楼层计数器
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = $post->ID AND comment_type = '' AND comment_approved = '1' AND !comment_parent");
$cnt = count($comments);//获取主评论总数量
$page = get_query_var('cpage');//获取当前评论列表页码
$cpp=get_option('comments_per_page');//获取每页评论显示数量
if (ceil($cnt / $cpp) == 1 || ($page > 1 && $page  == ceil($cnt / $cpp))) {
$commentcount = $cnt + 1;//如果评论只有1页或者是最后一页,初始值为主评论总数
} else {
$commentcount = $cpp * $page + 1;
}
}
/* 主评论计数器 end */

?>
<li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
<div id="comment-<?php comment_ID(); ?>">
<div>
<?php echo get_avatar( $comment, $size = '28', $default = get_bloginfo('template_directory') .'/images/avatar.png' ); ?>
<div>
<?php printf(__('<cite>%s</cite>'), get_comment_author_link()) ?> <?php edit_comment_link(__('(Edit)'),'  ','') ?><br />
<em><?php printf(__('%1$s at %2$s'), get_comment_date('Y/m/d '),  get_comment_time(' H:i:s')) ?><?php if(!$parent_id = $comment->comment_parent) {printf(' @ <em2>%1$s楼</em2>', --$commentcount);} ?></em>
</div>
<div>
<?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
</div>
</div>

<?php if ($comment->comment_approved == '0') : ?>
<em><?php _e('Your comment is awaiting moderation.') ?></em>
<br />
<?php endif; ?>
<?php comment_text() ?>
</div>
<?php } ?>

同样,红色标注的部分为需要修改的部分,显示楼层号的位置各位可自己修改。

为子评论添加楼层号

在显示楼层的相关位置插入如下代码即可:

<?php if( $depth > 1){printf('  @ <em2>B%1$s</em2>', $depth-1);} ?>

显示效果可以参看我的嵌套评论,欲了解更多可去林木木家参观...

以上方法综合转载自:zwwooooo>>关于主评论加上楼层号代码的问题与更新

2、为wp评论窗口添加背景图片

效果可以先看我的留言窗口。为什么要加呢?刺激各位的留言欲望呗,嘿嘿~

首先我们需要准备一张图片,或者一些文字,总之打开ps尽情发挥吧!

做成类似我的这种图片

为WP添加评论楼层号及评论窗口背景图

我的文字综合盗版自:高尔基《海燕》“这是勇敢的海燕,在怒吼的大海上,在闪电中间,高傲地飞翔;这是胜利的预言家在叫喊:——让暴风雨来得更猛烈些吧!”,我在“些”前加了个“一”,如有雷同纯属巧合。当然你也可以写成“此区域求糟蹋”等等...嘿嘿...

然后在主题的css中找到textarea的相关属性(我的为#comment),代码参考如下:

#comment{ width:96%; height:150px; font-size:12px; overflow:hidden; background-image:url(images/comment-bg.png);background-repeat:no-repeat;background-position:right bottom;}

其中红色标注部分为关键。解释一下相关代码:

background-image:url(images/comment-bg.png):背景图片设置

background-repeat:no-repeat:背景是否重复(不重复)

background-position:right bottom:背景右下对齐

只需要加入这些代码,然后上传你的图片即可了。

over!

ps:最近几天折腾中,多次向万戈大哥请教问题,在此表示感谢!

下周就要考试考查课了,再下周就是考试课考试了。时间不多了,我得抓紧时间复习了。吃饭去,吃过饭去自习室坐坐,嘿嘿!

60,690
更新日期: 2010-12-08
文章标签: ,,,
文章链接: http://www.xishao.net/wp/499.html
站方声明: 除特别标注, 本站所有文章均为原创, 互联分享, 尊重版权, 转载请注明.