织梦图片自动添加ALT属性

织梦本身没有批量添加或自动替换图片alt描述的功能,而使用织梦建站的朋友都有很多采集来的文章,大部分图片都没有alt属性,非常不利于SEO优化,手工添加又太费时费力,怎么办呢?
      织梦本身没有批量添加或自动替换图片alt描述的功能,而使用织梦建站的朋友都有很多采集来的文章,大部分图片都没有alt属性,非常不利于SEO优化,手工添加又太费时费力,怎么办呢?

      下面以织梦5.7为例介绍下怎么给你网站所有文章里的图片自动添加ALT属性,其他版本应该也可以,网上这一类的教程很多,网友在5.3/5.5版测试通过,5.6没试过,本文教程在织梦最新版5.7测试通过:

织梦5.7版自动给图片添加alt属性具体解决方法:
一. 找到网站Include目录下的arc.archives.class.php 文件并打开
  (模板标签:{dede:field.body/} ,如果是其它字段,可以修改$this->Fields['body'] 为其它的字段名。)

二. 用组合键 Ctrl+F 查找下面的这段代码
//设置全局环境变量 
$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename']; 
SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['aid'],$this->Fields['title'],'archives');
 
三. 在以上代码下面添加以下代码即可
//替换图片Alt为文档标题 
$this->Fields['body'] = str_ireplace(array('altalt=""','alt=\'\''),'',$this->Fields['body']); 
$this->Fields['body'] = preg_replace("@ [\s]{0,}alt[\s]{0,}=[\"'\s]{0,}[\s\S]{0,}[\"'\s] @isU"," ",$this->Fields['body']); 
$this->Fields['body'] = str_ireplace("<img " ,"<img alt='".$this->Fields['title']."' ",$this->Fields['body']);
 
温馨提示:这一步做一点补充,大家注意看下这段代码
<img alt='".$this->Fields['title']."'
   如果文章标题是 “新手如何推广网站” 则生成后的文章内图片的img属性就是“新手如何推广网站” ,我将其改为了下面的这段代码,使其实现图片ALT属性样式为 alt=”新手如何推广网站_lazybirdfly.com” ,这里的 _lazybirdfly.com 可以用你网站的主推关键词或网址来替换。
 <img alt='"".$this->Fields['title']."_lazybirdfly.Com'"
   这里是alt属性的替换规则,默认是替换为文章的标题,稍微转换下思路,其实也可以用tag标签或别的文章属性来代替。
 
  四. 由于使用了正则处理,会降低一些生成速度,如果数据量小,则可以忽略。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

我们在做 织梦模板 开发时,有时需要在artlist 和list标签中调用出图集中的图片,同时可以自定调用几张图片。跟版网整理了个一个这样功能的自定义函数。调用后效果如下: dedecms织梦artlist和list标签调用图集图片实现方法 函数代码 请将代码加入到 /includ
当我们需要在前端输出图片+对应的图片注释描述时,需要用到图集功能;当我们自定义模型或者商品模型、软件模型需要也要用到图片+注释描述时,也需要用到图集功能。 备份你后台目录以下4个文件 \dede\archives_add.php \dede\archives_edit.php \dede\templet
当我们需要在前端输出图片+对应的图片注释描述时,需要用到图集功能;当我们自定义模型或者商品模型、软件模型需要也要用到图片+注释描述时,也需要用到图集功能。 备份你后台目录以下4个文件 \dede\article_add.php \dede\article_edit.php \dede\templets\
当我们需要在前端输出图片+对应的图片注释描述时,需要用到图集功能;当我们自定义模型或者商品模型、软件模型需要也要用到图片+注释描述时,也需要用到图集功能。 备份你后台目录以下4个文件 \dede\soft_add.php \dede\soft_edit.php \dede\templets\soft_a
最近用DedeCMS做商城的时候,需要运用到全站都需要调用购物车数量的情况,但是找遍了网上的帖子无果,其实复制来复制去真没意思,用审查工具查看后,调用的JS显示的是出错的。如果你的错误是: Parse error: syntax error, unexpected in E:\APMServ5.2.6\ww
按以下顺序,打开核心-频道模型-内容模型管理-普通文章-更改,然后见下图: 调用示例: 代码如下: {dede:list pagesize=18 addfields=body} li p[field:body/]/p pa href=[field:arcurl/] title=[field:title/][field:title/]/a/p /li {/dede:list}