帝国CMS如何替换img标签的alt和title为标题?
网上的方法基本会出现两次alt标签,对SEO不利。
正文图片alt标签和title标签效果图
下面分享开拓族自用的方法:
1)增加自定义函数
在 e/class/userfun.php 里面增加下列函数
//修改正文img的alt,title
function user_AlterEditer($mid,$f,$isadd,$isq,$value,$cs){
$title=str_replace('"','',$_POST['title']);
$zhengze="/<img(.*?)img.kaituozu.com(.*?) (.*?)>/i";
$value=preg_replace($zhengze,"<img src="https://img.kaituozu.com\2>",$value);
$imgUrl = "<imgs[^>]*src=("??)([^" >]*?)\1[^>]*>";
if(preg_match_all("/$imgUrl/siU",$value,$matches,PREG_SET_ORDER)){
for ($i=0; $i < count($matches); $i++){
$before = $now = $matches[$i][0];
$altUrl = 'alt="'.$title.' 第'.($i+1).'张" title="'.$title.' 第'.($i+1).'张" ';
$now = ltrim($now,'<img ');
$now = '<img '.$altUrl.$now;
$value = str_replace($before,$now,$value);
}
}
return $value;
}
注意:
将代码中的img.kaituozu.com改成自己的网址,如www.abc.com
将代码中的https://img.kaituozu.com改成http://www.abc.com
2)设置函数执行时间
位置:后台>系统设置>数据表与系统模型>管理数据表,点击管理字段。
然后点击字段newstext后面的“修改”。
在“后台增加信息处理函数”和“后台修改信息处理函数”后添加user_AlterEditer,如图: