我正在使用get_avatar()
输出我的用户的图像。
参考号:https://codex.wordpress.org/Function_Reference/get_avatar
可选的size参数允许我指定大小。然而,这是一个方形的化身。
如何输出矩形的化身。宽300px,高150px?
我正在使用get_avatar()
输出我的用户的图像。
参考号:https://codex.wordpress.org/Function_Reference/get_avatar
可选的size参数允许我指定大小。然而,这是一个方形的化身。
如何输出矩形的化身。宽300px,高150px?
据我所知,get\\u avatar()函数只允许平方值。这并不意味着你不能使用样式来显示矩形化身。基本上,您可以使用样式从宽度上“剃掉”150px。
因此,假设您的主题文件使用以下代码为帖子作者生成一个300 x 300像素的化身:
<?php echo get_avatar( get_the_author_meta( \'ID\' ), 300 ); ?>
然后,只需将化身图像封装在DIV标记中,即可进行样式设置,如下所示:<div class="auth-avatar">
<?php echo get_avatar( get_the_author_meta( \'ID\' ), 300 ); ?>
</div>
然后使用CSS裁剪图像并将其居中:.auth-avatar {
width: 300px;
height: 150px;
overflow: hidden;
}
.auth-avatar img {
width: 100%
}
这应该可以奏效。以下是对结果的篡改:http(s)://*.gravatar.com
See in source - 通过使用名为s
. 因此,无论您做什么,Gravatar都会以1px到2048px之间的方形图像进行响应:"$host/avatar/ad516503a11cd5ca435acc9bb6523536?s={$size}";
Gravatar具有API... 这不行,抱歉让你失望了。return apply_filters( \'get_avatar\', $avatar, $id_or_email, $size, $default, $alt );
因此,在理论上(未经测试),您可以执行以下操作:add_filter( \'get_avatar\', \'wpse139329ResizedAvatar\', 10, 5 );
function wpse139329ResizedAvatar( $avatar, $id_or_email, $size, $default, $alt )
{
$newAvatar = wp_get_image_editor( $avatar );
if ( is_wp_error( $newAvatar ) )
return $avatar;
$newAvatar->resize( 500, 100, true );
$info = pathinfo( $avatar );
$newAvatar->save( $info[\'filename\'].$info[\'extension\'] );
return $newAvatar;
}
无论如何,它应该沿着上面显示的线工作。get_gravatar()
是“可插拔的”:if ( !function_exists( \'get_avatar\' ) ) :
因此,如果您覆盖它,您可以用另一种为用户显示头像的方法来完全替换它。自己制作一个,获取一个插件,等等。参考号:Gravatar Images, Gravatar仅支持方形图像,甚至函数引用get_avatar(), 声明单个参数。
然而,如果你真的想这样做,我想最好的选择是使用CSS。
我忽略的一些Wordpress博客突然在其顶部文件夹中生成了3个PHP文件:wp app。php、wp应用程序。php和wp寄存器。php,以前没有。根据谷歌的一些搜索结果检查他们的内容,表明我被一个常见的Wordpress漏洞所渗透。由于它们不断重新生成,我考虑将它们置为空白,并将文件权限设置为只读或更少。但如果WP需要它们,我不想损害站点功能。