欢迎光临
我们一直在努力

将title标签作为WordPress文章图片的ALT

WordPress站长在发表文章时,往往不注意给图片添加说明(ALT),导致大量文章中的图像缺少 ALT属性,不利于SEO。网上有很多自动给文章图片添加ALT属性的教程,这里转个国外的方法供参考。

只需将下面的代码添加到当前主题函数模板functions.php中即可。

function callback($buffer) {
	/* modify buffer here, and then return the updated code*/
	$title='';
	$res = preg_match('/<title>(.*?)<\/title>/', $buffer, $title_matches);

	if ($res) {
		/*Clean up title: remove EOL's and excessive whitespace.*/
		$title = preg_replace('/\s+/', ' ', $title_matches[1]);
		$title = trim($title);
	}

	preg_match_all('/<img (.*?)\/>/', $buffer, $images);
	if(!is_null($images)) {
		foreach($images[1] as $index => $value) {
			preg_match('/alt="(.*?)"/', $value, $img);
			preg_match('/alt=\'(.*?)\'/', $value, $img2);
			if(!is_null($images)) {
				if((!isset($img[1]) || $img[1] == '') || (!isset($img2[1]) || $img2[1] == '')) {
					$new_img = str_replace('<img', '<img alt="'.$title.'"', $images[0][$index]);
					$buffer = str_replace($images[0][$index], $new_img, $buffer);
				}
			}
		}
	}

return $buffer;
}

function buffer_start() { ob_start(); }

function buffer_end() { echo callback(ob_get_clean()); }

add_action('wp', 'buffer_start', 0);
add_action('wp_footer', 'buffer_end');
代码中虽然加了缓冲区,但还是会降低效率,建议安装静态缓存插件。
赞(0) 打赏
未经允许不得转载:WORDPRESS大侠 » 将title标签作为WordPress文章图片的ALT

评论 1

评论前必须登录!

 

  1. #1

    测试一条评论。

    admin4个月前 (09-09)

更好的WordPress主题

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册