更换了wordpress
博客系统后,由于Gravatar
头像源国内无法显示,导致评论区看起来特别扭。本着求知学习的精神开始解决此问题。
一番浏览后发现解决办法有三种:插件、修改代码、本地缓存。
出于对服务器性能影响考虑,插件和本地缓存就被pass
了,毕竟1核1G的小服务器已经搭建了6个网站了。
修改代码其实有两种,第一种是修改functions.php
文件,
譬如加入以下代码:
/*修复wordpress上Cravatar头像无法显示问题*/
if ( ! function_exists( 'get_cravatar_url' ) ) {
/**
*替换Gravatar头像为Cravatar头像
*
* @param string $url
*
* @return string
*/
function get_cravatar_url( $url ) {
$sources = array(
'www.gravatar.com',
'0.gravatar.com',
'1.gravatar.com',
'2.gravatar.com',
'secure.gravatar.com',
'cn.gravatar.com'
);
return str_replace( $sources, 'cravatar.cn', $url );
}
add_filter( 'um_user_avatar_url_filter', 'get_cravatar_url', 1 );
add_filter( 'bp_gravatar_url', 'get_cravatar_url', 1 );
add_filter( 'get_avatar_url', 'get_cravatar_url', 1 );
第二种修改link-template.php
文件。
所在位置:wp-includes/link-template.php
第4412行。
将
$url = 'https://secure.gravatar.com/avatar/' . $email_hash;
替换为
$url = 'https://sdn.geekzu.org/avatar/' . $email_hash;
或者可以找第三方Gravatar
国内镜像地址替换就行。
本人使用的是修改源码第二种,方便快捷,推荐大家使用第二种。
文章对我这种废物很有用👍
简单易懂也是我写博客的目的之一😇
好东西!墙越来越高了~
确实,除了墙越来越坚固,其他的也越来越拉垮了。
啥都要,啥都得不到!