我找到了一个很棒的教程来创建自定义头像(https://www.billerickson.net/wordpress-custom-avatar/)。基本上,它会检查:
1)如果有自定义头像,请使用它。
2)如果没有自定义头像,请检查是否有头像。如果有图像,请使用它。
3)如果都没有,请显示默认值。
问题在于我已经在wordpress上注册了用户,因此,每当他们发表评论时,它都会使用我为作者设置的自定义头像,用于所有已注册电子邮件的评论者。
这是我苦苦挣扎的代码的一部分:
// If provided an email and it doesn't exist as WP user, return avatar since there can't be a custom avatar
$email = is_object( $id_or_email ) ? $id_or_email->comment_author_email : $id_or_email;
if( is_email( $email ) && ! email_exists( $email ) )
return $avatar;
$custom_avatar = get_the_author_meta('be_custom_avatar');
if ($custom_avatar)
$return = '<img src="'.$custom_avatar.'" width="'.$size.'" height="'.$size.'" alt="'.$alt.'" />';
elseif ($avatar)
$return = $avatar;
else
$return = '<img src="'.$default.'" width="'.$size.'" height="'.$size.'" alt="'.$alt.'" />';
return $return;
如何进行检查,以确保如果“用户个人资料”中的“ be_custom_avatar”为空,并且没有设置图片,它将返回默认的wordpress $ avatar?
谢谢
答案 0 :(得分:0)
在WordPress中添加自己的头像
add_filter( 'avatar_defaults', 'custom_avatar' );
function custom_avatar($avatar_defaults){
$custom_avatar = get_stylesheet_directory_uri() . '/images/default-avatar.jpg';
$avatar_defaults[$custom_avatar] = "My Default Avatar";
return $avatar_defaults;
}
尝试此代码,您将找到解决方案