我正在寻找一种方式,允许作者的照片显示,没有作者有一个凹版帐户。
这似乎应该是基于作者身份,而不是电子邮件。
基本上,我只想能够上传作者的照片到默认媒体库(日期组织关闭)。它们将以作者ID命名,例如author23、author41等。
然后在作者的存档页面上调用,而不是Wordpress试图在gravatar上找到一个图像,而是从站点_url/上载/authorID加载相关的图像。
我在挣扎的是如何创建这个函数。
发布于 2022-10-15 19:43:22
一种选择是使用pre_get_avatar过滤器返回自定义的化身HTML,这将短路的get_avatar()阻止它接触到Gravatar的图像。
举个例子,
add_filter('pre_get_avatar', 'wpse_410434_author_img_html', 10, 3);
function wpse_410434_author_img_html( $avatar, $id_or_email, $args ) {
if ( $avatar || ! is_numeric( $id_or_email ) ) {
return $avatar;
}
$upload_dir = wp_upload_dir();
return sprintf(
'',
esc_url(sprintf(
'%s/author%d.jpg',
$upload_dir['baseurl'],
absint( $id_or_email )
)),
esc_attr( $args['size'] )
);
}N.B未经测试,但应该有效。调整以匹配您的确切设置和需要。
https://wordpress.stackexchange.com/questions/410434
复制相似问题