昨日在后台看到WP2.5发布之后,紧接着就到WP官方网站去下载了2.5版。除了焕然一新的后台界面外,在comment管理页面下竟然发现WP能显示Gravatar的头像了,换句话说,既然能显示Gravatar,说明WP已经提供了显示Gravatar的函数了。但在WP官网的Template Tag下面却没有发现和Gravatar相关的函数。
于是在后台文件中查询后,终于在wp-includes目录下的pluggable.php发现找到Gravatar图像的定义函数(官方英文版1217行):
function get_avatar( $id_or_email, $size = ’96′, $default = ” )
附带三个参数使用如下:
$size:头像大小,默认为96;
$default:如果用户没有定义Gravatar头像时,显示的默认头像图标地址。
如果未指定默认头像的显示地址,则将显示:
![]()
该语句输出的html代码为:
<img width=“96″ height=“96″ class=“avatar avatar-96″ src=http://www.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=96 alt=“”/>
为此,从2.5版起,用户可以不用再依靠第三方插件,直接在评论模板(comments.php)中加入该函数的调用代码用来显示评论者的Gravatar头像。以本站为例,介绍下该函数的使用:
<?php echo get_avatar( $email, $size = ’32′, $default = ” ); ?>
$email是评论者的email地址,可以在comments.php的<?php foreach ($comments as $comment) : ?>语句后面,增加$email变量的赋值语句,$email=$comment->comment_author_email来获取评论者email地址。
$size变量定义了图像大小为32px。
在下面发表个评论,您就可以看见显示效果了。
上述介绍的是该函数完整的调用方法。还有一种简单的调用法,可WP2.5的默认模板的comments.php 第30行,其使用了
<?php echo get_avatar( $comment, 32 ); ?>
来直接输出Gravatar图像。无论用那种方法,务必注意,该函数的调用须放在<?php foreach ($comments as $comment) : ?>语句后,否则会出错。
当然,如果想正确显示Gravatar的话,前提必须是评论者必须l在Gravatar上注册并提交了个性化头像。
转载文章请注明转载自:ThinkAgain - Let's Blog!


























2008.03.31 Monday 3:55 pm
呵呵,还真把它研究出来了
2008.03.31 Monday 7:40 pm
试下我的头像
2008.03.31 Monday 7:55 pm
Not Bad. Red smily.
2008.03.31 Monday 10:57 pm
[...] Copyright 2008 | Think Again | 原文链接 | 评论 [...]
2008.04.01 Tuesday 1:30 pm
呵呵,很不错的文章,我也正在纳闷儿呢。
2008.04.02 Wednesday 6:32 pm
新版wp后台把我吓傻了…………
2008.04.04 Friday 4:56 pm
[...] 语句后,否则会出错。 当然,如果想正确显示Gravatar的话,前提必须是评论者必须l在Gravatar上注册并提交了个性化头像。 【参考文献:(作者ThinkAgain) 点击查看】 [...]
2008.04.10 Thursday 11:33 am
我也试试看
2008.04.12 Saturday 1:35 pm
用上了 谢谢
2008.04.19 Saturday 4:37 pm
搞定了,tks,大哥。
2008.04.24 Thursday 3:57 pm
[...] 昨日在后台看到WP2.5发布之后,紧接着就到WP官方网站去下载了2.5版。除了焕然一新的后台界面外,在comment管理页面下竟然发现WP能显示Gravatar的头像了,换句话说,既然能显示Gravatar,说明WP已经提供了显示Gravatar的函数了。但在WP官网的Template Tag下面却没有发现和Gravatar相关的函数。 [...]
2008.05.10 Saturday 5:58 pm
谢谢。我也使用了这个了。
2008.05.16 Friday 2:38 pm
我也来秀下我的头像,呵呵。
2008.05.16 Friday 5:54 pm
头像啊头像
2008.05.18 Sunday 2:53 pm
凑个热闹!
2008.05.18 Sunday 2:55 pm
看看我的头像!
2008.06.01 Sunday 11:26 am
看看究竟是允许访客自由选择头像 还是系统随机提供的
2008.06.08 Sunday 9:51 pm
唉,我自己的网站显示不出来
2008.06.08 Sunday 9:53 pm
我用的就是默认的主题,就是用下面这个函数的
但是用wp_gravatar插件却能显示出,怎么回事呢?
2008.06.11 Wednesday 2:37 pm
呵呵,gravatar后来我自己弄好了
2008.07.23 Wednesday 3:57 pm
我来做测试