Dedecms 图片加上Alt或Title等属性
EDE_V5.3 实现给内容中的图片添加标题ALt标记,程序版本:V5.3X
修改文件:Include/ arc.archives.class.php
修改方法:
查找以下代码:
Copy code//设置全局环境变量
代码如下:
$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];
SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['aid'],$this->Fields['title'],'archives');
在以下添加代码:
Copy code//替换图片Alt为文档标题
代码如下:
$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 ",$this->Fields['body']);
模板标签:{dede:field.body/} ,如果是其它字段,可以修改$this->Fields['body'] 为其它的字段名。
效率说明:使用了正则处理,会降低一些生成速度,如果数据量小,则可以忽略。
能加个类似autoindex就好了 不然一个页面里有重复会有可能判为XXXX
因为有好多朋友可能正在使用dedecms 5.1的版本,但经测试,需要再修改一次即可解决图片地址在包含 空格,很是郁闷,如果有好的解决方法,可以分享下啊,回复即可。
下面是 dedecms 5.1 的修改方法:
因为有少许的问题,所以我们这里只给出 再添加跟修改时添加 图片的alt属性
文章添加文件位于:/dede/action/article_add_action.php (如果你修改的默认管理地址 替换 dede即可)
查找:
代码如下:</strong>
$body = addslashes($body);
替换为:
代码如下:
$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 ",$body);
$body = addslashes($body);
其实就是在转义字符前面添加正则替换,参考了上面 5.3的正则
文章修改页面修改原理相同:/dede/action/article_edit_action.php (如果你修改的默认管理地址 替换 dede即可)
查找:
代码如下:
$body = addslashes($body);
如果找到就替换为添加相同的代码。
如果没有找到就查找:
代码如下:
//更新数据库的SQL语句
替换为:
代码如下:
$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 ",$body);
//更新数据库的SQL语句
因为我们修改了dedecms的大量代码,所以有些地方并不一样,以自己的代码为准,注意修改前备份。
如果有什么不懂的,可以留言。
修改文件:Include/ arc.archives.class.php
修改方法:
查找以下代码:
Copy code//设置全局环境变量
代码如下:
$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];
SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['aid'],$this->Fields['title'],'archives');
在以下添加代码:
Copy code//替换图片Alt为文档标题
代码如下:
$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 ",$this->Fields['body']);
模板标签:{dede:field.body/} ,如果是其它字段,可以修改$this->Fields['body'] 为其它的字段名。
效率说明:使用了正则处理,会降低一些生成速度,如果数据量小,则可以忽略。
能加个类似autoindex就好了 不然一个页面里有重复会有可能判为XXXX
因为有好多朋友可能正在使用dedecms 5.1的版本,但经测试,需要再修改一次即可解决图片地址在包含 空格,很是郁闷,如果有好的解决方法,可以分享下啊,回复即可。
下面是 dedecms 5.1 的修改方法:
因为有少许的问题,所以我们这里只给出 再添加跟修改时添加 图片的alt属性
文章添加文件位于:/dede/action/article_add_action.php (如果你修改的默认管理地址 替换 dede即可)
查找:
代码如下:</strong>
$body = addslashes($body);
替换为:
代码如下:
$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 ",$body);
$body = addslashes($body);
其实就是在转义字符前面添加正则替换,参考了上面 5.3的正则
文章修改页面修改原理相同:/dede/action/article_edit_action.php (如果你修改的默认管理地址 替换 dede即可)
查找:
代码如下:
$body = addslashes($body);
如果找到就替换为添加相同的代码。
如果没有找到就查找:
代码如下:
//更新数据库的SQL语句
替换为:
代码如下:
$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 ",$body);
//更新数据库的SQL语句
因为我们修改了dedecms的大量代码,所以有些地方并不一样,以自己的代码为准,注意修改前备份。
如果有什么不懂的,可以留言。
免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。
来源:网友投稿 关注:
时间:2021-03-12 08:48
☉首先声明,只要是我们的vip会员所有源码均可以免费下载,不做任何限制(了解更多)
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
相关织梦教程:
- dedecms SQL注入漏洞 member/album_add.php 修复
- dedecms cookies泄漏导致SQL漏洞 /member/article_add
- Windows虚拟主机指定目录禁用脚本执行权限方法
- 西部数码虚拟主机设置禁止脚本执行权限
- 阿里云主机设置织梦程序禁止脚本执行权限及禁止写入
- dedecms织梦导致CPU峰值现象的解决办法
- 织梦程序网站被挂马或快照劫持终极解决办法
- 阿里云提醒/member/reg_new.php注入漏洞解决办法
- 织梦安全:更改plus名称
- 织梦栏目属性增加链接rel、nofollow和新窗口target
- 织梦问答模块PHP7报错解决方法
- dedecms解决移动端首页不自动更新问题