这标题弄的好拗口,意思明白就行了,就是内容替换关键字的时候同时会把图片的alt也给替换掉了。
仅限于系统设置了替换次数,实际上从seo来说不建议把整篇文章都替换,那样页面中如果出现关键字过多,那么相同连接就泛滥了,如果你系统设置中设置的替换成1次,2次,只要不是0,那么修改function.php中的ReplaceKey函数,425行,修改如下:
原函数: $newstext=empty($public_r[repkeynum])?str_replace($r[keyname],'<a href='.$r[keyurl].' target=_blank class=infotextkey>'.$r[keyname].'</a>',$newstext):preg_replace('/'.$r[keyname].'/','<a href='.$r[keyurl].' target=_blank class=infotextkey>'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);
修改后的: $newstext=empty($public_r[repkeynum])?str_replace($r[keyname],'<a href='.$r[keyurl].' target=_blank class=infotextkey>'.$r[keyname].'</a>',$newstext):preg_replace('/(?!<[^>]*)'.$r[keyname].'(?![^<]*>)/','<a href='.$r[keyurl].' target=_blank class=infotextkey>'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]); preg_replace是正则判断,就用正则表达式把<>里面的排除掉。这样一来问题就解决了。 修改前记得备份,改坏了不负责。本方法干净大方,无累赘,不增加负担~ ecms 6.6通过。 另,wm_chief为了解决替换关键字的图片连接问题,貌似把<a href="test.html">引号给去掉了,有代码洁癖的追求完美标准的童鞋请自行在preg_replace参数里加上吧。
|