通过网站URL定制WordPress评论的头像?

时间:2018-08-07 作者:Brock Allen

我尝试了几个不同的wordpress插件和解决方案,但没有什么是我想要的。

我想调整我的主题/wordpress,以便从人们填写的“网站URL”中抓取我的wordpress评论的头像。有人知道我会怎么做吗?

1 个回复
最合适的回答,由SO网友:Iceable 整理而成

默认情况下,大多数WordPress评论在显示评论时都会使用WordPress内置功能包含“gravatar”(链接到用户的电子邮件地址)get_avatar().

您可以将自定义函数挂接到get_avatar 过滤以返回其他图像。

像这样的东西应该可以为您的用例提供技巧:它过滤\'get_avatar\' 并返回带有评论作者网站URL的图像(如果已设置)。将此添加到主题(或子主题)函数中。php:

add_filter( \'get_avatar\', \'wpse310726_custom_avatar\', 1, 5 );

function wpse310726_custom_avatar( $avatar, $id_or_email, $size, $default, $alt = null ) {

    $comment_author_url = get_comment_author_url();

    if ( \'\' !== $comment_author_url ) {
        $avatar = "<img alt=\'{$alt}\' src=\'{$comment_author_url}\' class=\'avatar avatar-{$size} photo\' height=\'{$size}\' width=\'{$size}\' />";
    }

    return $avatar;
}

结束

相关推荐

Delete comments function

我做了一个功能,向登录用户显示她的所有评论,并允许她通过与打印的每个评论相关的删除按钮单独删除这些评论。该功能起作用,但在执行表单操作后,刷新时页面仍会显示已删除的注释,并且仅当您再次转到该页面(不是刷新,而是通过单击浏览器地址栏上的返回键)时,页面才会显示已批准的注释。如何解决此问题?代码如下: function custom_delete_post_comment() { $comment_id = comment_ID();