织梦dedecms文章、软件、图集的图片ALT自动变成完整标题的方法

时间:2014-10-09

图片alt描述是在网站SEO优化的一个细节,对于一个SEO高手来说,每个细节都相当重要。本文介绍如何将织梦dedecms文章、软件、图集的图片ALT自动变成完整标题(Title),减少人工修改的时间,全部自动生成标题全称的方法。

方法如下:

打开文件: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['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']);

//替换图片Alt为文档标题

改完以后直接生成全站就OK了,对图片多的站来说还是很重要的,图片的alt标签不容忽视。生成以后我发现一个问题,就是图片的注变成了alt='文章标题'单引号,但是百度的规范应该是alt="文章标题"双引号。

解决方法:

在代码的最后一行

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

改为

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

单引号改为双引号并在前面加 \ 即可。

上一条:织梦CMS幻灯片调用图片模糊解决办法 下一条:织梦dedecms栏目添加自定义字段,增加栏目上传缩略图功能

相关文章

最新文章