悟途网移动版

DEDECMS

悟途网 > CMS > DEDECMS > 正文

实现DedeCMS文章里图片ALT注释自动填充为文章标题

2013-06-13 13:13 悟途网 T

本文修改下面代码后,可将DedeCMS图片的ALT注释设置为文章标题。

具体方法:

首先找到文件 \include\arc.archives.class.php

 //设置全局环境变量

$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];

SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],’archives’);

}

将以上代码,替换为以下代码:

//设置全局环境变量

$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];

@SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],’archives’);

$this->Fields['body'] = str_ireplace(array(‘alt=”"‘,’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']);

$this->Fields['imgurls'] = str_ireplace(array(‘alt=”"‘,’alt=\’\”),”,$this->Fields['imgurls']);

$this->Fields['imgurls'] = preg_replace(“@ [\s]{0,}alt[\s]{0,}=[\"'\s]{0,}[\s\S]{0,}[\"'\s] @isU”,” “,$this->Fields['imgurls']);

$this->Fields['imgurls'] = str_ireplace(“<img ” ,”<img alt=\”".$this->Fields['title'].”\” “,$this->Fields['imgurls']);

}

另一个写法

//设置全局环境变量

$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];

@SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],'archives');

 //替换图片描述为标题

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

$this->Fields['imgurls'] = str_ireplace("<img " ,"<img alt='".$this->Fields['title'].",织梦吧dedecms8.com' ",$this->Fields['imgurls']);

$this->Fields['introduce'] = str_ireplace("<img " ,"<img alt='".$this->Fields['title'].",织梦吧dedecms8.com' ",$this->Fields['introduce']); 

}

将以上代码替换完成后,更新文档HTML,就可以了。