赣州建站资讯网

为消费者提供更优质的体验

帝国CMS增加信息自动把内容图片的alt和title属性替换为信息标题

不光给图片添加ALT也添加TITLE属性!大家触类旁通,可以改造一些特殊应用!
操作方法如下:


1.把下面的代码放到/e/class/userfun.php   (放到最后?>的前面)


function user_imgalt($mid,$f,$isadd,$isq,$value,$cs){
$title=$_POST['title'];
$htmls=$value;
$pattern = "/<img[^>]+>/"; 
preg_match_all($pattern, $htmls, $matches); 
for ($i=0; $i<=count($matches[0]); $i++) {
  preg_match_all("/alt=".+?"/",$matches[0][$i],$altimg); 
  preg_match_all("/title=".+?"/",$matches[0][$i],$titleimg); 
$t_alt=count($altimg[0]);
if($t_alt==0){
$htmls=str_replace("<img","<img alt="{$title}"",$htmls);
$htmls=str_replace("<img","<img title="{$title}"",$htmls);
}
}   
return $htmls;
}

2.在模型里正文字段一般是newstext(也可以是其它字段),在后台    增加信息处理函数,后台修改信息处理函数   文本框填上user_imgalt 如下图:


帝国CMS增加信息自动把内容图片的alt和title属性替换为信息标题


3.发布信息的时候就可以自动替换图片alt和title属性为信息标题了!



************************************************************************************************************************



下面的最新修改方法解决了修改时重复ALT的问题:


1、将以下文本里提供的字段处理函数放入 e/class/userfun.php 文件中


function user_AddImgAlt($mid,$f,$isadd,$isq,$value,$cs){
	$value=stripSlashes($value);
	$title=stripSlashes($_POST['title']);
	$title=str_replace('"','',$title);
	$zz2="/\<(img|IMG) (.*?)alt=\"(.*?)\"(.*?)>/is";
	$text=preg_replace($zz2,"<\\1 \\2\\4>",$value);
	$zz1="/\<(img|IMG) (.*?)>/is";
	$text=preg_replace($zz1,"<\\1 alt=\"{$title}\" \\2>",$text);
	return $text;
}


2.在模型里正文字段一般是newstext(也可以是其它字段),在后台    增加信息处理函数,后台修改信息处理函数   文本框填上user_imgalt 如下图:


帝国CMS增加信息自动把内容图片的alt和title属性替换为信息标题


这个函数增加alt内容是强制性的,如果手动添加了alt也会被替换掉,使用时请注意。



- END -
声明:文字图片等素材除标明原创外均来源于网络,如有侵权,请及时告知我们,我们将在最短的时间内删除!

相关推荐

微信公众平台:圆狐创意

关注圆狐创意微信公众平台浏览最新资讯

更多媒体及商务合作

QQ:295939675   或  至电:198-6662-0460