给 wordpress 头像加上 alt 标签

2016-03-08 06:10 423 8 条评论 龙笑天下
Dragon主题购买

不知道为什么,wordpress 几乎所有的博客头像标签都没加 alt!但是懂 SEO 的都知道,图片的 alt 属性是一定要加的,搜索引擎的爬虫是无法读取图片上到底是什么内容的,只能靠它的 alt 标签,没有了 alt 标签的图片,对 SEO 是非常不好的。抛开这个不说,反正加上 alt 标签又不会出什么问题,还是加上的好。

WordPress 默认使用的是 Gravatar 头像,通过 get_avatar() 函数调用:

<?php echo get_avatar( $id_or_email, $size, $default, $alt ); ?>

利用 get_avatar() 函数的第四个属性 $alt 可以设置返回代码的 alt 标签,但是大多数人在使用的时候都不会去设置,也就变成了空白。

要给 wordpress 评论里面的头像加上 alt 标签,有以下 2 种方法。

第一种:修改代码中评论头像的调用方式

只需在调用头像的地方将第四个参数都填进去即可,第四个参数即是 alt...比如留言评论上,像下面这样改:

echo get_avatar( $comment, $size = '32', $default = get_bloginfo('wpurl').'/avatar/default.jpg',get_comment_author());

第二种:自定义头像图片的 alt 标签

在 functions.php 中加入下面的代码,摘自 @EndSkin:

/**
* WordPress 自定义头像图片的 alt 标签 By ILXTX.COM
* https://www.ilxtx.com/wordpress-avatar-alt.html
*/
function lxtx_avatar_alt( $avatar, $id_or_email ){
    if( $id_or_email == '博主的 email 地址' || $id_or_email === 1 ){//填上博主的 email 地址
        $alt = '博主 Gravatar 头像';//博主的 alt 标签内容
    }else{
        $alt = 'Gravatar 头像';//普通访客的 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', 'lxtx_avatar_alt', 10, 2 );

当然,也可以参考下面这个头像本地化缓存的方法~

WordPress 头像本地化缓存最有效方法-BG
WordPress 头像本地化缓存最有效方法

WordPress 头像本地化缓存最有效方法

由于 gravatar 头像被墙,导致头像加载很慢,因此在网上搜索“wordpress 头像缓存优化”的方法,结果搜到的基本都是不有效,甚至是不可用的,偶然在露兜博客看到了一个方法,试用后,感觉非...

「点点赞赏,手留余香」

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

2016-03-01

2016-03-31

发表评论

表情 格式 贴图 链接 私密 签到
Dragon主题购买阿里云特价云服务器1核2G低至86元,N4共享型服务器3年仅需799元腾讯云特价云服务器1核2G 88元/年 2核4G3M688元/3年,更有千元代金券礼包免费领!
评论
正在努力加载中...
扫一扫二维码分享
×
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. Learn more