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建站有所帮助。

 

标签

发表评论