在网站SEO过程中,图片SEO绝对是不可或缺的一环,一张排名好的热搜图片,会给网站带来很多的访问量。那么使用WordPress的站长,如何给自己的网站图片增加ALT标签呢?
Alt信息添加策略
对于每一张图片,都应该认真填写其对应的描述信息。
但有时候发一篇文章,动辄十多张图片,每一张图片逐一添加,工作量很是巨大。但是不填又不利于SEO,所以就有了退而求其次的方案,即对于无alt信息的图片,自动添加当前的标题至图片的alt信息。
实现原理
- 通过自定义过滤器,筛选出文章中所有
<img>
标签 - 对没有alt信息的img标签加入
alt="文章标题"
标签 - 输出增加标签之后文章
实现方法
编辑主题文件夹下的functions.php
文件,如./wp-content/theme/dux/functions.php
在文件末尾(?>之前)加入以下代码:
/*
* 图片添加alt属性
*/
function img_alt( $imgalt ){
global $post;
$title = $post->post_title;
$imgUrl = "<img\s[^>]*src=(\"??)([^\" >]*?)\\1[^>]*>";
if(preg_match_all("/$imgUrl/siU",$imgalt,$matches,PREG_SET_ORDER)){
if( !empty($matches) ){
for ($i=0; $i < count($matches); $i++){
$tag = $url = $matches[$i][0];
$judge = '/alt=/';
preg_match($judge,$tag,$match,PREG_OFFSET_CAPTURE);
if( count($match) < 1 )
$altURL = ' alt="'.$title.'" ';
$url = rtrim($url,'>');
$url .= $altURL.'>';
$imgalt = str_replace($tag,$url,$imgalt);
}
}
}
return $imgalt;
}
add_filter( 'the_content','img_alt');
代码出自:小猫博客
为什么不用插件?
WordPress插件丰富,功能强大。但是我们应该选择性的使用插件,因为每个页面打开时,后台会自动调用所有插件,所以插件越多,越影响系统性能,同样不利于SEO。所以能用代码实现的功能尽量用代码实现。
为什么使用后没用….图片还是没有alt标签啊
原理是正则匹配图片,然后替换字符串实现的。可能是默认正则不匹配导致