2-04 3,758 views
今天刚把博客弄好,自己评论了几条内容,发现竟然没有头像显示,于是百度了一下,找出了一个简单的解决办法。
"实现代码"
/*1.在wordpress文件中/wp-includes/pluggable.php文件中找到以下这段代码:*/
if ( is_ssl() ) {
$host = 'https://secure.gravatar.com';
} else {
if ( !empty($email) )
$host = sprintf("http://%d.gravatar.com", ( hexdec( $email_hash{0} ) % 2 ) );
else
$host = 'http://0.gravatar.com';
}
/*2.用下面这段代码直接替换掉:*/
if ( is_ssl() )
$host = 'https://secure.gravatar.com';
else
$host = 'http://gravatar.duoshuo.com';
//3.完成以上操作再打开网站就可以发现,wordpress头像可以正常显示。
// 但这个方法有个缺点是下次升级wordpress版本的时候还得再次修改。
今天把wordpress升级到4.2.1时候发现上面的设置不管用了。于是又重新研究了下。发现新的头像服务器函数已经移动到”\WordPress4.2.1\wp-includes\link-template.php”(3604,29): $url = sprintf( ‘http://%d.gravatar.com/avatar/%s’, $gravatar_server, $email_hash );这里来了,如下:
$url_args = array(
‘s’ => $args[‘size’],
‘d’ => $args[‘default’],
‘f’ => $args[‘force_default’] ? ‘y’ : false,
‘r’ => $args[‘rating’],
);
$url = sprintf( ‘http://%d.gravatar.com/avatar/%s’, $gravatar_server, $email_hash );
$url = add_query_arg(
rawurlencode_deep( array_filter( $url_args ) ),
set_url_scheme( $url, $args[‘scheme’] )
);
将这一行修改一下就可以了,修改前把原来的注释下
$url = sprintf( ‘http://gravatar.duoshuo.com/avatar/%s', $email_hash );
[/panel-info]
解决WordPress升级4.2后调用国外图片导致大量404请求的问题
刚更新完4.2 ,发现wordpress报了大量的404错误,是s.w.org wordpress这个网址,一直在加载,一直加载不了并报错。
解决办法:
编辑 wp-includes 目录下的 default-filters.php 文件,搜索 print_emoji_detection_script 找到如下代码,并用 // 注释掉即可(后续版本更新时,此修改将会被重置):