好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

WordPress 评论添加楼层显示两种方法 - WordPress

WordPress 评论添加楼层显示两种方法

第一步:要在评论中增加楼号显示,也就是要更改WordPress的评论内部结构。

第二步:WP中的评论是统一标号的,也就是说,一条标号为256的评论并不知道它自己在某个日志中应该是几楼,所以要由我们来告诉它,举例来说,假设某篇日志中的评论分别是201号、207号、311号,其中311号是201号的子回复,那么尽管311是最新评论,但实际显示顺序是 201-311-207(从上到下),怎么才能让201知道自己是1楼,311知道自己是3楼呢?虽然说WP 2.7的显示评论的顺序由于嵌套规则的存在而被打乱,但实际上其在提取评论的时候仍然是按标号顺序来的,也就是说例子中的评论提取顺序是201-207-311,这样就正好符合1楼-2楼-3楼,所以方法也就很明显了,在提取评论的时候赋予楼号,在显示评论的时候提取楼号.

1.在提取评论时赋予楼号,在comments.php中找到如下代码:

<?php if ( have_comments() ) : ?>或是<?php if ( $comments ) : ?>,

在其后加上如下代码:

<?php  global   $comment_ids ;  $comment_ids  =  array ();  foreach  (  $comments   as   $comment  ) {  if  (get_comment_type() ==  "comment" ) {  $comment_ids [get_comment_id()] = ++ $comment_i ;}  } ?> 

2.在显示评论时提取楼号:

注意此处应当是在自定义的评论显示函数中(themes下的function.php,用ultraedit32等编辑器打开),最常见的是在显示日期的代码后加上如下代码,根据具体情况可能稍有变化,代码代码:

<div>  )  <span  class = "floor" ><?php  global   $comment_ids ;  $comment_floor  =  $comment_ids [get_comment_id()];  echo   $comment_floor . '楼' ; ?></span> 

如果有看不懂的地方可以留言,我会尽最大努力帮助你.

另一种办法

结合 comments.php 模板的评论循环函数,就能轻松解决楼层编号问题,编辑 comments.php 文件,找到以下评论循环的入口代码:

<?php foreach ($comments as $comment) : ?>

在这句代码之前添加如下代码:<?php $count=1; ?>

初始化 $count 变量,赋值 1在需要显示楼层编号的地方,插入以下代码,当然,如何呈现需要可以自定义样式,代码如下:<?php echo $count; ?>

输出楼层编号每次评论循环函数执行后,对 $count 变量进行加 1 操作,因此需找到:

<?php endforeach; ?>

在此循环结束之前加入:<?php $count++; ?>

$count 变量自加 1该方法在不分页评论中测试通过,但是否支持分页评论,有待考究.

查看更多关于WordPress 评论添加楼层显示两种方法 - WordPress的详细内容...

  阅读:46次