我一直试图使用get_avatar在wordpress模板中的每个帖子下用应用类显示作者的gravatar,但我找不到一种方法将class=“pic-2”添加到gravatar图像代码中,甚至无法将gravatar的高度和宽度分别更改为100px和77px
<?php echo get_avatar( get_the_author_meta('ID'), 32 ); ?>
有人帮忙吗??
我认为处理这个问题的最好方法是使用过滤器,而不是像乔治建议的那样使用jQuery。您只需将其添加到主题的functions.php文件中。
add_filter('get_avatar','add_gravatar_class');
function add_gravatar_class($class) {
$class = str_replace("class='avatar", "class='avatar pic-2", $class);
return $class;
}
*注意,我还没有测试过这个,但相信它会起作用。有关更多信息,请参阅此线程。
查看WordPress Codex了解更多信息:
http://codex.wordpress.org/Using_Gravatars
对于大小,尝试这样包装第二个参数:
<?php echo get_avatar( get_the_author_meta('ID'), $size = '96' ); ?>
默认html输出如下所示:
<img alt='' src='http://gravatarurl_or_default' class='avatar avatar-$size' height='$size' width='$size' />
您可以样式化默认类'avatar'代替'pic-2'。如果你仍然想添加一个类,你可以通过javascript这样做:
$("img[class='avatar']").addClass("pic-2");
希望这有帮助!:)
如果@Ryan answer(标记为解决方案)不适合您,请尝试更改
add_filter('get_avatar','add_gravatar_class');
function add_gravatar_class($class) {
$class = str_replace("class='avatar", "class='avatar pic-2", $class);
return $class;
}
进入
add_filter('get_avatar','add_gravatar_class');
function add_gravatar_class($class) {
$class = str_replace('class="avatar', 'class="avatar pic-2', $class);
return $class;
}
这是我在“替换为”之后开始的工作。
很抱歉我没有写这个作为对那个答案的评论,但是我没有50个声誉来评论其他帖子。