之前在其他人写的方法,详看“DedeCms V5.3 实现自动为内容中图片alt属性添加标题”,但是不太完美,有些缺点,就是每次并不会真正修改body里的内容,也就是数据库里保存的并没有改变,只是在生成html之前被修改,所以alt加标题效果只在html页面上被表达出来了。不过想做到真正修改内容(数据库内容)也是有办法,今天把方法写下来供大家参考使用。
适用版本:DEDECMS V5.3 / V5.5(之前版本没试过,不过应该也可以)
修改文件:dede/inc/inc_archives_functions.php
找到“//图集里大图的小图”,在其上面加入如下代码(位置并不需固定,其他地方也是可以):
- //替换图片Alt为文档标题
- $body = str_ireplace(array('alt=""','alt=\'\''),'',$body);
- $body = preg_replace("@ [\s]{0,}alt[\s]{0,}=[\"'\s]{0,}[\s\S]{0,}[\"'\s] @isU"," ",$body);
- $body = str_ireplace("<img " ,"<img alt='".$title."' ",$body);
若有什么问题,可以在页面下面评论处把问题留下来,我会及时答复。