之前网上找了很多类似的代码,基本都是一样的,都是用“< img alt=”替换“< img”字符来实现的,这种都不是我想要的,因为这么这几替换会导致“alt”标签跑到“src”前面,不符合代码规范。
找了很久找到一段正则替换的代码,比较符合我的实际应用场景,这里记录一下;
代码如下:
/** 自定义图片超链接代码 */
function imageshref($content) {
global $post;
$pattern ="/<a(.*?)href=('|\")(.*?).(bmp|gif|jpeg|jpg|png|webp)('|\")(.*?)>/i";
$replacement = '<a$1href=$2$3.$4$5 alt="'.$post->post_title.'" $6>';
$content = preg_replace($pattern, $replacement, $content);
return $content;
}
add_filter('the_content', 'imageshref');
/** 自动给图片添加Alt标签 */
function imagesalt($content){
global $post;
$preg = "/<img.*?src=[\"|\'](.*?)[\"|\'].*?>/";
$preg1 = "/<img.*?class=[\"|\'](.*?)[\"|\'].*?src=[\"|\'](.*?)[\"|\'].*?>/";
$alt = $post->post_title;
$title = ''.$post->post_title.'-'.get_option('blogname').'';
$img = '<img class="$1" src="$2" alt="'.$alt.'"title="'.$title.'">';
$content = preg_replace($preg1,$img,$content);
return $content;
}
add_action('the_content','imagesalt');
以上代码放到主题的“function.php”文件结尾处即可!
自动添加“alt锚文本”的方法很多,懒得研究或者跟我一样技术不到家的话,可以多利用搜索引擎搜索,然后根据自己的使用场景做修改。
锚文本有什么作用?
锚文本又称锚文本链接,是链接的一种形式。和超链接类似,把关键词做一个链接,指向别的网页,这种形式的链接就叫作锚文本。

有助于搜索引擎更快的爬行网站
对于搜索引擎来说,锚文本的作用之一就是有引导作用。合理的分布站内锚文本,会使搜索引擎蜘蛛更快速的爬行网站目录,这和网站的面包屑导航有异曲同工之妙,这也是对搜索引擎友好的一种表现。
提高排名
另一方面,合理的站内锚文本指向会使引擎更加准确的认识文章的内容所要描述信息,从而使长尾关键词排名提升,网站权重增加。外部链接的锚文本也会给网站很高的关键权重
增加用户体验
当用户浏览某一个页面的时候,可能文章的内容对用户而言不是非常的有用,这个时候锚文本就起到了一种引导性的作用,通过锚文本,用户往往会更快更准确的找到自己需要的资料。那么对于没有做网站锚文本的网站而言,当用户没有找到自己需要的东西的时候,他们常见的动作就是关闭页面,这也从反面验证了站内锚文本对于用户体验的作用。