《PHP解决百度ueditor编辑器清除title属性并修改alt》要点:
本文介绍了PHP解决百度ueditor编辑器清除title属性并修改alt,希望对您有用。如果有疑问,可以联系我们。
相关主题:PHP开发 / ueditor在线编辑器
百度UEDITOR编辑器提交文章,其中的title是数字值,并且会有alt属性,其值是图片在本地电脑上的原名。
前面说过在UE源码上修改的方法。这里发一个维易PHP的服务端处理函数:
函数功能:
可以清除title也可以保留但更换成指定文章标题的。
可以给新标题加上序列号,增加SEO差异度。
使用方法:
$artTitle = '这是新的标题'; echo resetContentTitle($content, $artTitle,1);
函数代码:
/** 给百度ueditor编辑器内容处理title为数字,改为文章标题 * http://www.vephp.com 维易PHP * 自由分享,请保留网址,谢谢 * @param $content 文章内容 * @param string $artTitle 文章标题 * @param int $clearTitle 是否去掉title属性。1去掉title属性, 2 保留title,使用新标题内容 * @param bool $useSn 在添加新标题时,是否给标题加上序号,比如:这是新的标题1,这是新的标题2... * @return mixed 新的文章内容,也可不使用返回值,因为是直接在原文章内容上处理,执行完函数内容已变更 */ function resetContentTitle(&$content, $artTitle='', $clearTitle =1, $useSn=true) { $reg = '#(<img[^>]* )(title\s*=\s*[\'\"](?:\s*[0-9a-zA-Z\+\-\.\_]+\.(?:jpeg|jpg|png|gif|bmp))?[\'\"])([^>]*>)#is'; #清除title preg_match_all($reg, $content,$title); if(!empty($title[0]) && $clearTitle) { foreach ($title[1] as $k=>$html) { $titleTag = ($clearTitle>1 && !empty($artTitle)) ? ' title="'.$artTitle.($useSn?$k+1:'').'" ' : ' '; $newImgCode = trim($title[1][$k]).$titleTag.trim($title[3][$k]); $content = str_replace($title[0][$k], $newImgCode,$content); } } //处理alt,保留以利SEO $reg = '#(<img[^>]* )(alt\s*=\s*[\'\"](?:\s*[0-9a-zA-Z\+\-\.\_]+\.(?:jpeg|jpg|png|gif|bmp))?[\'\"])([^>]*>)#is'; #更换alt preg_match_all($reg, $content,$alt); if(!empty($alt[0])) { foreach ($alt[1] as $k=>$html) { $altTag = !empty($artTitle) ? ' alt="'.$artTitle.($useSn?$k+1:'').'" ' : ' '; $newImgCode = trim($alt[1][$k]).$altTag.trim($alt[3][$k]); $content = str_replace($alt[0][$k], $newImgCode,$content); } } return $content; }
转载请注明本页网址:
http://www.vephp.com/jiaocheng/83.html