让代码更简单

解决WordPress头像不显示,更换头像服务器

重要:本文最后更新于2021-05-10 19:47:32,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

前一段时间国内很多wordpress站点出现了头像不显示问题,出现这个问题的原因是v2ex提供的wordpress头像服务不能使用,使用其它头像服务的不受影响。狗哥这种对头像显不显示没追求的人是不会管它的,所以我一直没管它,正好DUX主题更新了头像源,直接拿来水一篇文章,没错,最近就是这么懒,直接拿过来就是我的了。

使用老版本DUX主题,或者DMD主题(近期更新)的用户可以按照下面的方法修改即可。

打开主题目录下的主题配置options.php文件,找到关于gravatar的配置项,改成如下内容,没有的直接添加即可。

复制
$options[] = array(
'name' => __('头像服务器', 'haoui'),
'id' => 'gravatar_from',
'std' => "",
'type' => "select",
'desc' => "尝试选择适合自己的",
'options' => array(
'https://www.gravatar.com/avatar/' => 'https://www.gravatar.com/avatar/',
'https://secure.gravatar.com/avatar/' => 'https://secure.gravatar.com/avatar/',
'https://gravatar.wp-china-yes.net/avatar/' => 'https://gravatar.wp-china-yes.net/avatar/',
'https://sdn.geekzu.org/avatar/' => 'https://sdn.geekzu.org/avatar/',
));
$options[] = array(
'id' => 'gravatar_from_custom',
'std' => '',
'desc' => '不使用以上选择,自定义头像服务器,如: <code>https://www.gravatar.com/avatar/</code>',
'type' => 'text');

DMD主题请修改id属性gravatar_fromgravatar_url,以前的单选改成了下拉列表,不清楚的直接覆盖。

然后在function_theme.php文件中找到关于gravatar的钩子,改成如下代码,没有就新增。

复制
add_filter('get_avatar_url', '_get_avatar_url_tmd');
function _get_avatar_url_tmd($url) {
$from = _hui('gravatar_from_custom');
if( !$from ){
$from = _hui('gravatar_from', 'https://gravatar.wp-china-yes.net/avatar/');
}
$url = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&d=(.*).*/', $from.'$1?s=$2&d='.get_option('avatar_default'), $url);
return $url;
}

从该函数的命名中可以看出DUX作者浩子在编写时的心情不是那么美丽,tmd都出来了,咱们也懒得改,直接拿来用,毕竟改一下至少也得动好几次手指呢。

上面的代码DMD主题注意其中的_hui('gravatar_from', 'https://gravatar.wp-china-yes.net/avatar/'),将gravatar_from改成gravatar_url即可。以前的代码都可以删掉了。

保存后去主题后台设置中选择一下新的头像服务地址,保存一下就可以在前端看到效果了。

可用头像源

  1. [推荐]七牛镜像源 https://dn-qiniu-avatar.qbox.me/avatar/
  2. [推荐]WP-China-Yes 镜像源 https://gravatar.wp-china-yes.net/avatar/
  3. [推荐]极客族 https://sdn.geekzu.org/avatar/
  4. Gravatar官方 WWW 源 https://www.gravatar.com/avatar/
  5. Gravatar官方 CN 源 https://cn.gravatar.com/avatar/
  6. Gravatar官方 EN 源 https://en.gravatar.com/avatar/
  7. Gravatar官方 secure 源 https://secure.gravatar.com/avatar/

感觉很棒!可以赞赏支持我哟~

1 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐