输出自定义Trackbacks和Pingbacks的方法

» 2011-02-08 80条评论

我的主题一直都是评论和 Trackbacks/Pingbacks 分开输出的,以前用的是 welee 写的方法,后来我觉得不如统一用 wp_list_comments 来输出比较好,于是几个月前就自己写了个。最近有朋友问起,为了减少我的重复说明量,就用这篇文章简单说一下方法,以后有人问题可以直接给这篇文章的链接,同时增加 PV 量,哈哈哈。

因为 Trackbacks 和 Pingbacks 没头像,所以还是自定义一下输出结构,我的结构是

Trackbacks/Pingbacks的文章名及链接 + 类型 + 时间

具体可以点这里围观(评论框下面)。

第一步:自定义输出结构,把下面的 wp_list_comments 回调函数 custom_pings 的代码放到 functions.php(注意要放到 <?php ?> 之间)

function custom_pings($comment, $args, $depth) { // wp_list_comments()->pings callback by zwwooooo
    $GLOBALS['comment'] = $comment;
    if('pingback' == get_comment_type()) $pingtype = 'Pingback';
    else $pingtype = 'Trackback';
?>
    <li id="comment-<?php echo $comment->comment_ID ?>">
        <?php comment_author_link(); ?> - <?php echo $pingtype; ?> on <?php echo mysql2date('Y/m/d/ H:i', $comment->comment_date); ?>
<?php }

这是我的结构,可以根据自己需要的写。

第二步:在 comments.php 加上下面的调用代码,我一般放到评论框后面。

<?php //输出自定义Trackbacks和Pingbacks by zwwooooo
foreach($comments as $comment){
   if(get_comment_type() != 'comment' && $comment->comment_approved != '0'){ $havepings = 1; break; }
}
if($havepings == 1) : //判断是否有 Trackbacks/Pingbacks
?>
	<div class="trackbacks-pingbacks">
		<h3>Trackbacks and Pingbacks:</h3>
		<ul id="pinglist">
            <?php wp_list_comments('type=pings&per_page=0&callback=custom_pings'); ?>
		</ul>
	</div>
<?php endif; ?>

至于列表样式我就不写了,自己看 CSS 教程或者用 firebug 看我的主题结构吧。

zww
or
oooo

“输出自定义Trackbacks和Pingbacks的方法”有80条评论

  1. 来留言咯..呵呵!
    最近在做新网站..所以少来了!第一次留言..
    以前弄个个人博客...但是写出来的东西没人看!蛋T
    所以拆了.. :mrgreen:

    1. zwwooooo says:

      @游戏掌门人
      “最近在做新网站..所以少来了!第一次留言..”这句话是不是自相矛盾呢?哈哈哈,荒淫常来

  2. 阿修 says:

    刚换主题,这个要加上……

    1. zwwooooo says:

      @阿修
      量产帝!

  3. 爱惜 says:

    额,这个我一直没动它。一直空白的说

    1. zwwooooo says:

      @爱惜
      一般可以无视

  4. willin says:

    新年快樂~

    1. zwwooooo says:

      @willin
      新年快乐!

  5. 我刚回来,来看看,呵呵

    1. zwwooooo says:

      @软件盒子
      新年好啊,现在大家陆续回来了

  6. 郑永 says:

    统一好。

    1. zwwooooo says:

      @郑永
      看各人喜爱了

  7. zhx says:

    Z哥新年快乐!

    1. zwwooooo says:

      @zhx
      恭喜发财啊!

  8. heson says:

    mark···································这个必须要的········

    1. zwwooooo says:

      @heson
      慢慢折腾

  9. 博客士 says:

    那引用框左右拉拉的是怎么实现的。。

    1. zwwooooo says:

      @博客士
      怎样左右拉?我没折腾过哦

    2. 博客士 says:

      @zwwooooo
      就是那代码框啊,第一步:那下面的代码,

    3. zwwooooo says:

      @博客士
      你的意思是怎么实现x滚动轴?不过我这不是引用,是pre,你要引用实现也可以,给引用元素加上 overflow:auto; 属性即可。

  10. 博客士 says:

    是jQuery 实现的?文盲中...我的站没用这个效果,有少数代码溢出。。

    1. zwwooooo says:

      @博客士
      ?不用 jQuery,我写的不就是css属性么……

  11. 球犯 says:

    支持一个 虽然自己不会用~呵呵 帮忙点广告~ :mrgreen:

    1. zwwooooo says:

      @球犯
      感谢!难得有人点,呵呵。

  12. 奚少 says:

    唉,后悔早没有看到此文。我刚刚从willin大师的主题中提取出来了他的方法。

  13. 沙丘 says:

    你好
    这个好像有点问题,虽然分离了,但是原评论框架中还是有pingback等显示

    1. zwwooooo says:

      @沙丘
      这个可没有说会自动屏蔽你原来评论框架的pingback输出,你要禁止就要改评论框架。

发表评论

昵称 *

网址

B em del U Link Code Quote