正在加载...
Dec
30th

如何改造WordPress的评论结构

昨天有同学问我新主题的评论结构是怎么改的。

其实要更改评论的结构并不难,首先你要先了解wp_list_comments()这个函数。自WordPress更新至2.7版本起,由于其原生支持了嵌套评论(Threaded Comments)功能,故引入了一个新的内核函数wp_list_comments(),这个函数用于显示整个评论列表,能够根据用户的评论层次自动进行嵌套显示。因为wp_list_comments()封装了评论的相关代码,对于一些想要个性化样式评论的朋友来说,仅仅使用WordPress的默认结构显然不够用了。

下图是wp_list_comments()默认的代码结构:
Default-Comment

为了修改评论的结构,我们需要用到wp_list_comments()的callback参数。首先找到comments.php中的wp_list_comments()函数,更改如下:

1
<?php wp_list_comments('type=comment&callback=custom_comments');?>
  1. type=comment:表示需要提取的内容为评论,因为wp_list_comments()提取的对象不仅仅有评论还有引用通告
  2. callback=custom_comments:表示我要使用我自己的评论显示函数custom_comments(),这个函数的名字可以自己定义

自己的函数名确定后,找到functions.php文件,建立自己的评论显示函数,代码如下:

1
2
3
4
5
6
<?php
	function custom_comments($comment, $args, $depth) {
	$GLOBALS['comment'] = $comment; ?>
	<li></li><?php
	}
?>

最后在li标签之间添加自己定制化的HTML代码结构就搞定了。

  1. junjun 2009-12-30 16:27 回复

    我怎么没看出你的不一样来,试试

    • Milo 2009-12-31 09:13

      说明你道行还不够哈…

    • 吓我一跳 2010-4-7 21:45

      很实用的技巧,主题很漂亮

  2. 小适 2010-1-1 11:13 回复

    哇。。。。原来WordPress那么复杂啊。。。。我晕了。

    • Milo 2010-1-2 11:01

      要改的其实不多哈

  3. johnson 2010-1-2 00:30 回复

    添加表情咋整喃?

    • Milo 2010-1-2 11:02

      这个就要从xxx说起了…你要不要我给你摆?

  4. Rudder 2010-1-21 09:56 回复

    太麻烦了,要弄那么多个页面….

    • Milo 2010-1-21 10:10

      你的好久搞的出来哦

    • Rudder 2010-1-26 10:48

      我决定放个半成品出来

    • Milo 2010-1-26 15:32

      好久放?

    • 歪歪 2010-2-8 00:24

      你这个评论很不错。。能否把源码给小弟学习一下呢?谢谢你拉~~
      我的邮箱 wangsiyuan@foxmail.com
      敬候佳音

  5. ddf 2010-5-8 01:07 回复

    455466464a6sdadad

    • Milo 2010-6-5 14:13

      捣乱的?

  6. itmontage 2010-5-16 20:56 回复

    好猥琐的高人,最后一步感觉没说完。

    • Milo 2010-6-5 14:14

      高人不敢当哈,猥琐就欣然接受了,哈哈。最后一步说完了的!

  7. 11 2010-6-2 14:43 回复

    1

    • Milo 2010-6-5 14:13

      2

  8. 11 2010-6-2 14:43 回复

    淡淡的点点滴滴

    • Milo 2010-6-5 14:13

      兄弟好雅兴啊…

  9. 阿修 2010-6-5 14:49 回复

    很多主题都callback了,这个函数很不错哈

    • Milo 2010-6-8 10:56

      恩,更进一步实现定制化~