当前位置:博客首页 > CMS建站 > 织梦CMS > DEDECMS自动把文章标题设置为图片alt属性的方法

DEDECMS自动把文章标题设置为图片alt属性的方法

来源:未知作者:admin发表于:2019-02-19阅读:803

站长在使用织梦CMS更新文章时免不了需要添加文章配图。但有些站长就比较懒,比如赤天雨就是这样的。但图片不添加ALT属性搜索引擎就无法识别,这样并不利于SEO优化理念。但一张一张的添加又会显的很麻烦,特别是有些站长有多个站点,其网站内容也是直接采集其它网站上的。那么问题来了,像这样站点多,更新内容频繁,有比较懒的站长要怎么解决文章图片alt属性的问题呢?

DEDECMS自动把文章标题设置为图片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['id'],$this->Fields['title'],'archives');

三:在代码下面添加以下代码即可

DEDECMS自动把文章标题设置为图片alt属性的方法_www.chitianyu.com

//替换图片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']);

注:这里做一些补充,具体如下:

通过上面代码的修改,站长们都知道如果文章标题是 “赤天雨DEDECMS教程” 那么文章内图片的alt属性就是“赤天雨DEDECMS教程”。其实我们可以做进一步修改,例如我们想把alt属性改成“赤天雨DEDECMS教程_chitianyu.com”。chitianyu.com可以改成你自己使用的域名。

方法如下:

$this->Fields['body'] = str_ireplace("<img " ,"<img alt='".$this->Fields['title']."_chitianyu.com' ",$this->Fields['body']);

这里需要说明因为使用了正则处理,对生成速度会有一定影响,但数据量小者可自行忽略不计。

哎呦,不错哦!
(1)
相关阅读