WordPress修改首页右侧最新评论格式

WordPress自带的首页最新评论工具条的显示格式是作者加文章的连接。而我们可能更希望显示用户评论的内容。怎么办呢?
我可以通过安装插件来解决,不过为了速度尽量不使用插件。
我们还可以通过修改 wp-includes/default-widgets.php 来解决。
找到wp-includes下的default-widgets.php,用记事本或者EditPlus等文本工具打开,记得备份文件(你懂的)。
搜索“recentcomments”,找到如下代码

if ( $comments ) {
  foreach ( (array) $comments as $comment) {
    $output .=  '<li class="recentcomments">' . sprintf(
      _x('%1$s on %2$s', 'widgets'), get_comment_author_link(),
      '<a href="'.esc_url(get_comment_link($comment->comment_ID)).'">'
      . get_the_title($comment->comment_post_ID) . '</a>'
    ) . '</li>';
  }
}

修改为一下代码

if ( $comments ) {
  foreach ( (array) $comments as $comment) {
    $_content = trim(strip_tags( $comment->comment_content));
    //控制显示的评论内容的字数
    if(iconv_strlen($_content,'UTF-8')>29){
      $_content = iconv_substr($_content,0,26,'UTF-8')."...";
    }
    $output .= '<li class="recentcomments">
    <a title="'.$comment->comment_author.
      '" rel="external nofollow" class="sculpture" href="'.
      ($comment->comment_author_url == ''?'javascript:;':$comment->comment_author_url).
      '">'.get_avatar( $comment->comment_author_email, 68 ).'</a>
    <p class="detail"><a href="' .
      esc_url( get_comment_link($comment->comment_ID) ) .
      '">' . $_content . '</a></p>
    <p class="bottom">发表于'.$comment->comment_date.'</p>
    </li>';
  }
}

关于语言,我把中文直接写在了代码里面,我实在是嫌麻烦,需要修改语言方式实现的可以自行百度。

这里面还涉及到样式的问题,需要在样式文件(style.css)里面添加以下代码:

/*******widget_recent_comments**********/
.widget_recent_comments{
}
.widget_recent_comments .recentcomments{
	overflow:hidden;
	zoom:1;
	position:relative;
	padding:8px 0 8px 55px;
	min-height:50px;
	background-color:#f5f5f5;
	margin-bottom:2px;
}
.widget_recent_comments .recentcomments .sculpture{
	display:block;
	width:45px;
	height:45px;
	position:absolute;
	left:0;
	top:10px;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	overflow:hidden;
}
.widget_recent_comments .recentcomments p{
	margin-bottom:0;
}
.widget_recent_comments .recentcomments .sculpture img{
	width:45px;
	max-width:45px;
	height:45px;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}
.widget_recent_comments .recentcomments .bottom{
	font-size:12px;
	color:#999;
	margin-top:5px;
}
.widget_recent_comments .recentcomments .detail{
	color:#333;
	font-size:12px;
}

这样就有了最终的效果了,如下图

新版最新评论效果图

代码中涉及到的属性和方法:

$comment中的主要属性
$comment->comment_ID //评论ID
$comment->comment_author //评论者名称
$comment->comment_author_email //评论者的电子邮件
$comment->comment_author_url //评论者的网址
$comment->comment_date //评论时间
$comment->comment_content //评论内容

相关方法
get_comment_link() //获取文章连接,带评论锚点
get_avatar( ‘参数一:评论者邮件’, ‘参数二:图片大小’)  //获取评论者头像

马上分享给你的朋友吧~

WordPress修改首页右侧最新评论格式》上有 3 条评论

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>