WordPress

为 WordPress Gravatar 头像设置 alt 属性

WordPress 程序使用的是 Gravatar 作为评论者的头像,这应该是众所周知的事情。但是不知道大家有没有发现,Gravatar头像的Alt属性为空值,这一点显然不符合w3c的标准。周良这里提供一个可以为 WordPress Gravatar 头像设置 alt 属性的方法。

编辑网站根目录下的wp-includes/pluggable.php,查找 get_avatar 语句。

function get_avatar( $id_or_email, $size = '96', $default = '', $alt = false ) {  
    if ( ! get_option('show_avatars') )  
        return false;  

    if ( false === $alt)  
        $safe_alt = '';  
        else 
        $safe_alt = esc_attr( $alt );

修改为下面的代码即可:

function get_avatar( $id_or_email, $size = '96', $default = '', $alt = false ) {      
    if ( ! get_option('show_avatars') )      
        return false;      

    if ( false === $alt)      
        $safe_alt = 'Gravatar';  //Alt属性为“Gravatar”
//      $safe_alt = get_comment_author($alt);  //有说这样写就输出用户名,实测Alt属性为“匿名”
    else     
        $safe_alt = esc_attr($alt);    

嗯,然后到这里,就可以为你的为 WordPress Gravatar 头像设置 alt 属性了。
本方法来自于网络,非原创。

微信扫一扫,分享到朋友圈

为 WordPress Gravatar 头像设置 alt 属性
59

你也可能喜欢

59 条评论

  1. 可以用这个代码:
    function Bing_avatar_alt( $avatar ){
    $alt = 'alt 标签的内容';//alt 标签的内容
    $before = strpos( $avatar, "alt='" );
    $after = strpos( $avatar, "'", $before );
    if( $before === false || $after === false ) return $avatar;
    $alt = esc_attr( $alt );
    return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) );
    }
    add_filter( 'get_avatar', 'Bing_avatar_alt' );

  2. 可以用这个代码:
    function Bing_avatar_alt( $avatar ){
    $alt = 'alt 标签的内容';//alt 标签的内容
    $before = strpos( $avatar, "alt='" );
    $after = strpos( $avatar, "'", $before );
    if( $before === false || $after === false ) return $avatar;
    $alt = esc_attr( $alt );
    return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) );
    }
    add_filter( 'get_avatar', 'Bing_avatar_alt' );

  3. 我用的ZB的PHP版,感觉更小巧

  4. 我用的ZB的PHP版,感觉更小巧

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片

关于周良粥凉

产品经理,现电商从业者;从事过互联网医疗与金融等行业。 / 写了 9 年独立博客,喜恶皆在字里行间。

分类

微信扫一扫

微信扫一扫