帝国CMS二次开发实现自动将内容图片的alt和title替换为标题
帝国CMS二次开发可以通过自定义字段来实现自动把内容图片的alt和title替换为标题。首先,在后台创建一个自定义字段,例如“标题图片”,然后在模板中使用这个自定义字段来显示图片。接着,在模板解析函数中,获取文章标题作为图片的alt和title属性值。最后,将自定义字段的值替换为文章标题。这样,当发布文章时,图片的alt和title属性就会自动替换为文章标题了。这种方法简单易行,能够有效地提高网站的SEO优化效果。
操作方法如下
1.把下面的代码放到/e/class/userfun.php (放到最后?>的前面)
functionuser_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","<imgalt="{$title}"",$htmls);$htmls=str_replace("<img","<imgtitle="{$title}"",$htmls);}}return$htmls;}
2.在模型里正文字段一般是newstext(也可以是其它字段),在字段处理函数文本框填上user_imgalt 如下图:
3.发布信息的时候就可以自动替换图片alt和title属性为信息标题了!