帝国cms常见问题:多终端手机版内容图片压缩的方法
PC端下上传的内容图片一般比较大,在移动端下加载会很慢,此时我们需要把这些图片处理下那么可以借助PHP的函数 preg_replace_callback: 函数执行一个正则表达式搜索并且使用一个
注意:如果要使用本方法一定要先修改gd.php,教程参考:[7.X版] 帝国CMS(EmpireCMS)缩略图函数改进(GD库改进)
PC端下上传的内容图片一般比较大,在移动端下加载会很慢,此时我们需要把这些图片处理下
那么可以借助PHP的函数 preg_replace_callback: 函数执行一个正则表达式搜索并且使用一个回调进行替换。
直接看代码:
// 内容图片压缩处理
function NewsTextReplace($add){
$add['newstext'] = preg_replace_callback(
'/<img.*?src="(.*?)".*?>/is',
function ($callback) {
return '<img src="' . sys_ResizeImg($callback[1], 370, 200, 3) . '" width="100%">';
},
stripslashes($add['newstext'])
);
$add['newstext'] = addslashes($add['newstext']);
return $add;
}
把代码放到userfun.php中,在内容页模板里调用即可,如果是动态和伪静态,则需要在/e/action/show.php里打开对应的位置放置即可。
打开/e/action/show.php搜索 $GLOBALS['navclassid'] = $r['classid'];
在前面添加代码:
$r = NewsTextReplace($r);
此方法适合基于栏目伪静态插件下使用,其他方式同理,自行研究。
如下示例代码:
<p>// 内容图片压缩处理<br />function NewsTextReplace($add){<br /> $add['newstext'] = preg_replace_callback(<br /> '/<img.*?src="(.*?)".*?>/is',<br /> function ($callback) {<br /> return '<img src="' . sys_ResizeImg($callback[1], 370, 200, 3) . '" width="100%">';<br /> },<br /> stripslashes($add['newstext'])<br /> );<br /> $add['newstext'] = addslashes($add['newstext']);<br /> return $add;<br />}</p>
免责/版权声明:
1、所有来源标注为 ECMSPLUS /zwcms.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可,如涉及大面积转载,请来信告知,获取授权。
2、本站所提供的文章资讯、软件资源、素材源码等内容均为作者提供、网友推荐、互联网整理而来(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考,如有侵犯您的版权,请联系我们,本站将在三个工作日内改正。
3、若您的网站或机构从本站获取的一切资源进行商业使用,除来源为本站的资料需与本站协商外,其他资源请自行联系版权所有人。
4、 ECMSPLUS /zwcms.com不保证资源的准确性、安全性和完整性,请您在阅读、下载及使用过程中自行确认,本站亦不承担上述资源对您或您的网站造成的任何形式的损失或伤害
5、未经 ECMSPLUS /zwcms.com允许,不得盗链、盗用本站资源;不得复制或仿造本网站,不得在非 ECMSPLUS /zwcms.com所属的服务器上建立镜像, ECMSPLUS /zwcms.com对其自行开发的或和他人共同开发的所有内容、技术手段和服务拥有全部知识产权,任何人不得侵害或破坏,也不得擅自使用。
6、互联网的本质是自由与分享,我们真诚的希望,每一份有价值的正能量能够在互联网中自由传播,能够为每一个网站提供动力。
评论(3)
欢迎您光临1pma.cn,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!
?
?普通用户