您的位置:小众博客 > Wordpress > 正文

给WordPress博客调用第三方头像

超人不会飞 / Wordpress / 2669人阅读(点这评论

一般我们在进行oauth授权的时候都可以调用第三方的头像,一定程度上可以弥补很多人没有gravatar头像的缺陷。原理其实很简单,我们只需要把头像用user_meta储存起来,然后再通过get_avatar的hook来调用即可。完全不需要修改主题的头像调用。

wordpress调用第三方头像

下面的代码添加到functions.php中,其中头像的调用部分根据你实际情况略有不同。

function fa_avatar_hook( $avatar, $id_or_email, $size, $default, $alt ) {
    $user = false;

    if ( is_numeric( $id_or_email ) ) {

        $id = (int) $id_or_email;
        $user = get_user_by( 'id' , $id );

    } elseif ( is_object( $id_or_email ) ) {

        if ( ! empty( $id_or_email->user_id ) ) {
            $id = (int) $id_or_email->user_id;
            $user = get_user_by( 'id' , $id );
        }

    } else {
        $user = get_user_by( 'email', $id_or_email );   
    }

    if ( $user && is_object( $user ) ) {
            if( get_user_meta($user->data->ID,'weixin_avatar',true) ){
            $avatar = get_user_meta($user->data->ID,'weixin_avatar',true);
            $avatar =  str_replace('http','https',$avatar);
            $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
        } else if( get_user_meta($user->data->ID,'sina_avatar',true) ){
            $avatar = get_user_meta($user->data->ID,'sina_avatar',true);
            $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
        }//根据你的存储头像的key来写
    }

    return $avatar;
}
add_filter('get_avatar', 'fa_avatar_hook' , 1 , 5);

以上代码已更新到github中的repo中,地址https://github.com/bigfa/wp-oauth

微信头像是支持https的,而微博的不支持,如果你的网站启用了https,要注意这一点。

via bigfa

- END -

标签:wordpress教程 

业界动态
  • 库克:中国从未要求苹果公司解锁手机
  • 搜狗开了个小差儿
  • 权健实际控制人束某某等18人被刑拘
  • 8 岁的微信更新了 7.0,张小龙想要如何打动你我?
  • 晚报 因色情内容微信及QQ邮箱暂停漂流瓶服务
  • 晚报 瓜子二手车因违反广告法被开千万罚单
  • 谷歌再砍通讯应用环聊Hangouts 2020年关停旧版
  • 阿里巴巴调整架构:阿里云升级为阿里云智能
  • Steam正式进入中国
  • 欧盟拟征“链接税” 谷歌威胁关闭“谷歌新闻”
  • 网站运营
  • 什么是Referer 设置防盗链时候指明和不指明空Referer的区别
  • 宝塔面板迁移系统盘/www到数据盘/data
  • 自适应网页设计代码需要做的6大调整
  • 站长们,不要忘了你的网站是要做什么的
  • 浅谈网站网页面价值所在
  • 2016年网络SEO外链指南
  • 网站优化太早并不是一定是好事
  • 十年博客路 花开花散 云卷云舒
  • SEO专员,如何评估一个外链的价值?
  • 从博客与微博的区别,谈社交创新的九败一胜
  • 年度热门
  • 大疆无人机针对美国市场涨价
  • 谷歌正式关闭短网址服务GOO.GL
  • 支付宝回应AI换脸 出意外全额赔付
  • 微博调整转发评论数据上限一百万
  • 越来越多的中年人消失在朋友圈
  • 2018年搜索引擎百度拦截打击500多亿条有害信息
  • 搜狗开了个小差儿
  • 8 岁的微信更新了 7.0,张小龙想要如何打动你我?
  • 阿里云双12服务器两折优惠 仅限新人使用
  • 这个“忽悠”马云10亿的男人,终于当选为院士