^ 回到顶部
  • 人生没有定律,每个人都有自己的节奏
  • 本站wordpress建站教程均通过实践后发布,希望对你有帮助,如果有代码出错,请联系站长解决
  • 希望你的坚持,都是因为热爱,而不是因为不甘心
  • 8年wordpress建站经验,5星服务品质
  • 那些不愿意让你吃亏的人,才是真正值得你深交的人,也是值得你付出时间的人
  • 腾讯云3年2核2G新品轻量限时特惠只需408元

启用Yusi2.1后gavatar头像不显示解决办法

昨天看到同盟源分享的 Yusi1.0 修改升级版顿时觉得眼前一亮,立马换上试试,可发现一个很严重的问题,安装主题后 Gavatar 头像一直在那转啊转啊转,看着很是闹心,于是陌小雨开始动刀子啦!前不久,陌小雨发布过一片安装知更鸟主题后发布的一篇文章:解决知更鸟主题评论头像不显示,今天的手术需要改文章中的代码:
需要修改的四个文件,分别是 functions.php、comment.php、widgets/wid-comment.php、ajax/comment.php 共四个文件
修改办法:

1、functions.php 修改

找到如下代码删除

2 核 2G 限时特惠 396 元/3 年    宝塔建站 10850 大礼包

//评论头像缓存
function deel_avatar($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('wpurl');
  $e = ABSPATH .'avatar/'. $f .'.png';
  $t = dopt('d_avatarDate')*24*60*60; 
  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(get_bloginfo('template_directory').'/img/default.png', $e);
  return $avatar;
}

替换为如下代码:

//解决 Yusi2.1 主题 gravatar 头像被墙 by 陌小雨
function get_ssl_avatar($avatar) {
   $avatar = preg_replace('/.*\/avatar\/(.*)\s=([\d]+)&.*/','<img src="https://secure.gravatar.com/avatar/$1s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
   return $avatar;
}
add_filter('get_avatar', 'get_ssl_avatar');

然后搜索
[v_qing]deel_avatar[/v_qing]
全部替换为
[v_pink]get_ssl_avatar[/v_pink]

2、comment.php、widgets/wid-comment.php、ajax/comment.php 文件修改

同样如上搜索全部替换即可。

陌小雨写完文章才发现还有一个更简单的方法:
直接将上面代码

//解决 Yusi2.1 主题 gravatar 头像被墙 by 陌小雨
function get_ssl_avatar($avatar) {
   $avatar = preg_replace('/.*\/avatar\/(.*)\s=([\d]+)&.*/','<img src="https://secure.gravatar.com/avatar/$1s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
   return $avatar;
}
add_filter('get_avatar', 'get_ssl_avatar');

中的两个 get_ssl_avatar 替换为 deel_avatar 好像更便捷一点, 😥 哎,不管了,反正已经修改完了。

赠人玫瑰,手有余香。