布丁快跑

WordPress 自动添加图片、Gravatar 头像 alt 和 title 属性

WordPress 写博客或多或少会添加一些图片,而图片添加 alt 和 title 属性对搜索引擎比如 Google SEO 更友好。手动添加最准确,效果最好,但是麻烦,特别是图片比较多的文章就很费事,那么 WordPress 能自动添加图片、Gravatar 头像 alt 和 title 属性吗?

「WordPress 自动添加图片、Gravatar 头像 alt 和 title 属性:https://bdkp.net/39」

图片 alt 属性简介

ALT,全称 alternative text,翻译过来就是「替代文字」,可以称为「ALT 属性」、「ALT 描述」,ALT 是 HTML 一个属性,主要用作图片的文字描述,当图片无法正常加载显示时,就显示该图片 ALT 描述来替代未能成功加载的图片。

ALT 属性目的是让博主给上传的图片添加一个文字描述,起码有两种不错作用:

「WordPress 自动添加图片、Gravatar 头像 alt 和 title 属性:https://bdkp.net/39」

WordPress 如何自动添加图片 alt 属性和 title 属性?

不嫌麻烦每张图片手动添加效果最好,WordPress 如何自动添加图片 alt 属性和 title 属性?网上可以找到不少方法。

这里分享一个自用懒人代码,不管原本有没有 alt 或者 title 属性,都会强制自动替换

//强制自动添加替换图片 alt 和 title 属性 ae.mba
function image_alttitle( $content ){
global $post;
$btitle = get_bloginfo('name');
$imgtitle = $post->post_title;
$imgUrl = "<img\s[^>]*src=(\"??)([^\" >]*?)\\1[^>]*>";
if(preg_match_all("/$imgUrl/siU",$content,$matches,PREG_SET_ORDER)){
if( !empty($matches) ){
for ($i=0; $i < count($matches); $i++){
$tag = $url = $matches[$i][0];
$j=$i+1;
$url = preg_replace( '/(title|alt)="\d*"\s/', "", $url );
$altURL = ' alt="'.$imgtitle.' - 第'.$j.'张图片" title="'.$imgtitle.' - 第'.$j.'张图片 | '.$btitle.'" ';
$url = rtrim($url,'>');
$url .= $altURL.'>';
$content = str_replace($tag,$url,$content);
}
}
}
return $content;
}
add_filter( 'the_content','image_alttitle', 98);

附送:为 Gravatar 头像添加 alt 属性

一般主题 Gravatar 头像都没有 alt 属性,不过其实 WordPress 自带 get_avatar 函数就有 alt 属性。

「WordPress 自动添加图片、Gravatar 头像 alt 和 title 属性:https://bdkp.net/39」
function get_avatar( $id_or_email, $size = 96, $default = '', $alt = '', $args = null )

其中:$alt 就是 alt 可选参数,默认是空……

使用「博客名字 - 评论者名称」作为 Gravatar 头像 alt 属性,参考代码:

<?php echo get_avatar( $comment, 48, '', get_bloginfo("name").'-'.get_comment_author() ); ?>

注意:此方法仅适用于使用 get_avatar 输出头像。

「WordPress 自动添加图片、Gravatar 头像 alt 和 title 属性:https://bdkp.net/39」

参考资料:龙笑天下

退出移动版