WordPress 自动为文章中的图片添加 alt 和 title 优化网站 SEO

方法一

此方法是根据文章中的 img 标签是否存在 alt值 和 title值 来判断,然后把文章标题添加到图片的 alt值 和 title值,无论图片格式是什么。

//自动将文章标题和网站名添加到alt和title
function img_alt($content) {
	global $post;
	preg_match_all('/<img (.*?)\/>/', $content, $images);
	if(!is_null($images)) {
		foreach($images[1] as $index => $value) {
			$new_img = str_replace('<img', '<img alt="'.get_the_title().'-'.get_bloginfo('name').'" title="'.get_the_title().'-'.get_bloginfo('name').'"', $images[0][$index]);
			$content = str_replace($images[0][$index], $new_img, $content);
		}
	}
	return $content;
}
add_filter('the_content', 'img_alt', 99999);

如果你不希望在图图片 alt 和 title 中添加网站名称可以用下面的代码:

//自动将文章标题添加到alt和title
function img_alt($content) {
    global $post;
    preg_match_all('/<img (.*?)\/>/', $content, $images);
    if (!is_null($images)) {
        foreach ($images[1] as $index => $value) {
            $new_img = str_replace('<img', '<img alt="' . get_the_title() . '" title="' . get_the_title() . '"', $images[0][$index]);
            $content = str_replace($images[0][$index], $new_img, $content);
        }
    }
    return $content;
}
add_filter('the_content', 'img_alt', 99999);

方法二

此方法是覆盖文章中的 img 标签 alt值 和 title值,然后把文章标题覆盖到图片的 alt值 和 title值,图片格式支持(webp|bmp|gif|jpeg|jpg|png),可以自行添加其他图片格式。

//自动将文章标题添加到alt和title
function lxtx_image_alt_title($content) {
	global $post;
	$pattern = "/<img(.*?)src=('|\")(.*?).(webp|bmp|gif|jpeg|jpg|png)('|\")(.*?)>/i";
	$replacement = '<img$1src=$2$3.$4$5 alt="'.$post->post_title.'" title="'.$post->post_title.'"$6>';
	$content = preg_replace($pattern,$replacement,$content);
	return $content;
}
add_filter('the_content','lxtx_image_alt_title',15);

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

提升 WordPress 安全性的 10 个 Nginx 规则

2020-10-5 2:10:54

WordPress教程

禁用 WordPress 媒体附件页面并 301 重定向到文章页面或首页

2020-10-23 16:27:58

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索