WordPress 2.7 Trackbacks 的两种处理方法
难度: ★
WordPress 2.7 快发布了, 最近大家都在为新的嵌套回复和留言翻页功能兼容主题. 这东西说难不难, 但是处理起来还是挺烦的, 尤其是要求兼容旧版本 WordPress 的时候. 幸运的是, 无私的小白鼠 Denis, 不但在自己的博客上做了实验, 还为我们贡献了两篇教程, 热烈地为他鼓掌.
本文中, 我将说说 Denis 和我对 Trackbacks 两种不同的处理方法.
Denis 的方法
Denis 在《WordPress 2.7 Separate 留言和样式化留言》一文中讲解了如何将一般评论和 Trackbacks 分开, 并为之定义样式. 个性化的 Trackbacks 的处理如下:
1. 定义 Trackback 的样式
1 2 3 4 5 6 7 8 9 | <?php //定义 Trackbacks 列表 function custom_pings($comment, $args, $depth) { $GLOBALS['comment'] = $comment; ?> <li id="comment-<?php comment_ID( ); ?>" class="trackback"><strong></strong><?php comment_author_link(); ?></li> <?php } ?> |
2. 调用 Trackbacks
1 2 3 4 5 6 | <?php if ( ! empty($comments_by_type['pings']) ) : ?> <h2>Trackbacks/Pingbacks</h2> <!-- 没有 Trackbacks 总数 --> <ul class="commentlist"> <?php wp_list_comments(array ('type' => 'pings')); ?> </ul> <?php endif; ?> |
以上方法是被用得最多的, 也与一般评论的处理方法相似. 但我有另一个更适合我的方法...
MG12 的方法
因为 Trackbacks 是不需要嵌套的, 所以我们可以在 comments.php 中获取 Trackbacks 并处理之, 不需要再分开处理. 这么一来, 我们不但可以方便取得 Trackbacks 的条目总数, 还可以轻松地兼容旧版本的 WordPress. 以下是我的处理办法:
1. 获取 Trackbacks
1 2 3 | <?php $trackbacks = $comments_by_type['pings']; ?> |
2. 显示 Trackbacks
1 2 3 4 5 6 7 8 | <?php if ($trackbacks) : ?> <h2><?php echo count($trackbacks); ?> Trackbacks/Pingbacks</h2> <!-- 有 Trackbacks 总数 --> <ul class="commentlist"> <?php foreach ($trackbacks as $comment) : ?> <li id="comment-<?php comment_ID( ); ?>" class="trackback"><strong></strong><?php comment_author_link(); ?></li> <?php endforeach; ?> </ul> <?php endif; ?> |
方法不分好坏, 自己用着方便就好了. 不知道哪种更适合你呢?
声明: 本文采用 BY-NC-SA 协议进行授权. 转载请注明转自: WordPress 2.7 Trackbacks 的两种处理方法

我又抢到沙发了哟~
等着2.7出来,用内置的thread comment来建楼 哈哈
恩,我觉得你的方法更好!
不用有插件实现了吗?难道出现了问题?
@JAY
你很强.
@Yacca
2.7 beta1 还有一些低级 bug, 正式版前还是不要太勇了.
@Patrick
我的是传统路线的, 哈哈~
@talkrei
不用插件就能实现, 是 2.7 的新功能.
出来的时候就问下你怎么搞
期待一下2.7
@Yacca 大家一起盖楼~哈哈
@JAY
是不是装了沙发工具?
wp越来越强大了,不过还是2.5,一直没更新。唉,比较落后啊
@忘记月亮 我们头像一样哇!!!!!!!!!盗版哇
期待中...
@胡戈戈
(- -!) 我相信你的能力.
@明龙
人有相似, 图有相仿.
最近也在搞blogger的backlink!研究中。。。
不错。学习了。。不过WP的更新速度超速度的块。
等这些个东西都完备了再升级2,7 暂时不去管了。
正期待着2.7的发布呢,后台改善了很多
我有一个trackbacks,今天改样式时
使用 却出现0个trackbacks,不知道怎么搞得
<?php if ( !empty($comments_by_type['pings']) ) : ?>
<h4>Trackbacks</h4>
<b>看看别人怎么评论这个帖子...</b>
<ol class="commentlist">
<?php wp_list_comments('type=pings'); ?>
</ol><br /><br />
<?php endif; ?>
这个有什么有点?
用這個方法之後
WP Thread Comment這個plugin會出問題耶
没有两全其美的.
@mg12
这里的评论是怎么显示嵌套和引用的呢?我不知道哪里有例子。
@Simplor
1. 我这里不支持嵌套回复.
2. 引用代码是我写的, 你可以参考我发布的主题.
我昨天才安上的wp,感觉你的回复系统很好啊 请问用的什么插件 还是主题自带的呢
His hands were trembling, and he needed to lean against a desk to steady himself. ,
These taste wonderful and are a great way to use up lots of zucchini. ,
Discrimination, Deontology, and Consequentialism 804 X. ,