WordPress 多站点头像本地化,Gravatar 头像替换和加速。

WordPress 多站点头像本地化,Gravatar 头像替换和加速。

正在查看 3 个帖子:1-3 (共 3 个帖子)
  • 作者
    帖子
  • 诗语
    管理员
    • 文章数量: 5,889
    @feibisi
    楼主

    为了要整合 buddypress ,现在就必须要先去掉 Gravatar 头像,不然加载速度太慢,暂时还没有完美的解决方案,不过可以尝试以下几种方式。

    2016-01-25.49.28

    诗语
    管理员
    • 文章数量: 5,889
    @feibisi
    楼主

    gravatar 头像ssl

    // 头像ssl
    function get_ssl_avatar($avatar) {
       $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*/','<img src="https://secure.gravatar.com/avatar/$1?s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
       return $avatar;
    }
    add_filter('get_avatar', 'get_ssl_avatar');
    
    诗语
    管理员
    • 文章数量: 5,889
    @feibisi
    楼主

    完全屏蔽掉 Gravatar 头像,调用本地图片。

    
    function bp_remove_gravatar ($image, $params, $item_id, $avatar_dir, $css_id, $html_width, $html_height, $avatar_folder_url, $avatar_folder_dir) {
        $default = get_bloginfo('home') . '/wp-content/themes/Avada-Child-Theme/avatars/default-avatar.gif' ;
    
        if( $image && strpos( $image, "gravatar.com" ) ) {
            return '<img src="' . $default . '" alt="avatar" class="avatar" ' . $html_width . $html_height . ' />' ;
        } else {
            return $image ;
        }
    }
    
    add_filter('bp_core_fetch_avatar', 'bp_remove_gravatar', 1, 9 ) ;
     
    function remove_gravatar ($avatar, $id_or_email, $size, $default, $alt) {
        $default = get_bloginfo('home') . '/wp-content/themes/Avada-Child-Theme/avatars/default-avatar.gif' ;
        
        return '<img alt="' . $alt . '" src="' . $default . '" class="avatar avatar-' . $size . ' photo avatar-default" height="' . $size . '" width="' . $size . '" />' ;
    }
    
    add_filter('get_avatar', 'remove_gravatar', 1, 5) ;
     
    function bp_remove_signup_gravatar ($image) {
        $default = get_bloginfo('home') . '/wp-content/themes/Avada-Child-Theme/avatars/default-avatar.gif' ;
    
        if( $image && strpos( $image, 'gravatar.com' ) ) {
            return '<img src="' . $default . '" alt="avatar" class="avatar" width="150" height="150" />' ;
        } else {
            return $image ;
        }
    }
    
    add_filter('bp_get_signup_avatar', 'bp_remove_signup_gravatar', 1, 1 ) ;
正在查看 3 个帖子:1-3 (共 3 个帖子)
  • 哎呀,回复话题必需登录。

话题信息