在 WordPress 中缓存 Gravatar 头像并将其本地化是很简单的。你可以使用一个插件来完成这个任务,或者手动完成。
使用插件进行Gravatar头像缓存本地化
在 WordPress 后台中安装并激活 "Cache Gravatar Images" 或 "Gravatar Cache" 插件。
进入插件的设置页面,并按照插件的说明进行设置。
访问你的网站,看看头像是否被缓存到本地了。
使用代码进行Gravatar头像缓存本地化
在你的主题的 functions.php 文件中添加以下代码:
function utheme_avatar_cache( $avatar ){
$tmp = strpos( $avatar, 'http' );
$g = substr( $avatar, $tmp, strpos( $avatar, '\'', $tmp ) - $tmp );
$tmp = strpos( $g, 'avatar/' ) + 7;
$f = substr( $g, $tmp, strpos( $g, '?', $tmp ) - $tmp );
$w = get_bloginfo( 'template_directory' );
$path = TEMPLATEPATH . '/avatar';
$e = $path . '/' . $f . '.png';
$t = 604800; //設定7天, 單位:秒
if( !is_file( $e ) || ( time() - filemtime( $e ) ) > $t ) copy( htmlspecialchars_decode( $g ), $e );
else $avatar = strtr( $avatar, array( $g => $w . '/avatar/' . $f . '.png' ) );
if( filesize( $e ) < 500 ) copy( TEMPLATEPATH . '/avatar/default.png', $e );
return $avatar;
}
add_filter('get_avatar', 'utheme_avatar_cache' );
然后,在你所使用的WordPress主题根目录内新建名为“avatar”的文件夹,并设置文件夹权限为777。
最后放一个PNG格式的图片(名为default)作为默认头像。这样,刷新你们的网站,再看看,头像的地址是不是本地化了。
欢迎咨询/Welcome to inquire
tel/vx:18842938855
qq:1685522781
email:
[email protected]