• 本站压缩包统一解压密码:crowsong.xyz
  • 请善用右上角的搜索功能和下方的标签功能
  • 文章存在时效性,请注意发布时间与最后修改时间

WordPress设置Gravatar头像镜像服务器

WordPress 水之笔记 6天前 11次浏览 0个评论

一、前言

最近 gravatar 头像的服务器中国大陆已经从访问缓慢变成了彻底无法访问了,也导致了缓存到本地头像的方法无法使用,因为无法访问就根本没有办法下载到本地缓存了。所以在网上找了一些解决方法,并进行了整理。


二、设置镜像服务器获取头像

如果你的主题有设置 gravatar 头像镜像地址的地方则不需要,同时某些复杂的主题可能已经对于头像的获取方法有所修改(例如 git 主题),所以此方法可能会无效或者导致主题出现严重问题,请确保在修改前对文件进行过备份。


将下面的代码添加到当前主题函数模板functions.php中:

add_filter('get_avatar', function ($avatar) {
    return str_replace([
        'www.gravatar.com/avatar/',
        '0.gravatar.com/avatar/',
        '1.gravatar.com/avatar/',
        '2.gravatar.com/avatar/',
        'secure.gravatar.com/avatar/',
        'cn.gravatar.com/avatar/'
    ], 'sdn.geekzu.org/avatar/', $avatar);
});

通过 add_filter 替换默认的头像服务器地址,可修改其中的:sdn.geekzu.org/avatar/为其它镜像服务器地址。
本方法可以实现前后台同时使用 Gravatar 头像镜像服务器,代码取自 WP-China-Yes 插件。
其它是网上所提供的 Gravatar 头像镜像服务器地址(可以先用浏览器访问下看看能否正常使用):

    sdn.geekzu.org/avatar/
    gravatar.loli.net/avatar/
    gravatar.wp-china-yes.net/avatar/
    gravatar.zeruns.tech/avatar/
    gravatar.inwao.com/avatar/


三、对于 git 主题

目前笔者使用的是老版的git 主题 9.3.2 版本,因为很多东西已经改变了,导致一部分功能已经失效,但是我又懒得更新主题然后重新修改。所以决定自己动手修改 function.php 里面的函数,来保证可以正常的使用 Gravatar 镜像服务器。本人技术有限,使用方法可能不会正确,仅供参考。(本人已对 git 主题作者进行赞助,具体请查看本博客的关于界面,若想要对 git 主题进行修改,请务必先赞助原作者。)
git 主题是可以自己设置镜像服务器的,但是在测试后发现这个功能失效了。在使用 chrome 的开发者工具进行测试后发现,无论我将镜像地址修改到哪里他所使用的地址还都是不变的。他永远会使用secure.gravatar.com这个地址来获取头像,所以我想可能是地址替换那里出问题了,打开 function.php 后发现旧版的函数确实并没有替换这个地址:

function git_avatar_cache($avatar) {
    $avatar = str_replace(array(
        "www.gravatar.com",
        "0.gravatar.com",
        "1.gravatar.com",
        "2.gravatar.com"
    ) , git_get_option('git_avatar_qnurl') , $avatar);
    return $avatar;
}

所以做了如下的修改:

function git_avatar_cache($avatar) {
    $avatar = str_replace(array(
        'www.gravatar.com/avatar/',
        '0.gravatar.com/avatar/',
        '1.gravatar.com/avatar/',
        '2.gravatar.com/avatar/',
        'secure.gravatar.com/avatar/',
        'cn.gravatar.com/avatar/'
    ) , git_get_option('git_avatar_qnurl') , $avatar);
    return $avatar;
}

修改后保存,再次在高级设置标签栏里面选择头像镜像【精确】,并在Gravatar 头像镜像服务器里面填写镜像地址即可正常使用。


参考资料:

为知笔记版本地址:点击此处跳转


水之笔记 , 版权所有丨如未注明 , 均为原创丨转载请注明出自 水之笔记的博客 crowsong.xyz
小站不易,若您觉得文章对您有所帮助,您可以在网页右上方使用支付宝赞助下小站或者扫描下支付宝红包。
喜欢 (2)
发表我的评论
取消评论

表情 加粗 删除线 居中 斜体

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址