帝国CMS文章正文怎么把img图片的alt替换为文章标题?(完美解决) 帝国CMS将正文内容img图片标签里alt值默认设为文章标题的方法,最近有很多的网友问到帝国模板网这边,那么今天帝国cms模板网小编就来为大家分享一个修改的实例: 需求:我们在发布内容时,希望内容中的图片都能给alt加上内容,这样对SEO友好,还可能从搜索引擎图片搜索那里带来一些流量,如果人工加,效率低。 问题:正文内容中的图片是和其他文字存在一起,没法用模板标签单独读取出来。 思路:新建一个函数,用于自动替换正文IMG里的ALT内容。
方法: 在 e/class/userfun.php 里面增加: //替换正文IMG里的ALT内容
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);
$t_alt=count($altimg[0]);
if($t_alt==0){
$htmls=str_replace("<img","<img alt="{$title}"",$htmls);
}
}
return $htmls;
} 然后在后台系统设置-数据表模型-字段管理里面 编辑 newstext字段,增加如下:
|