网站运营
联系我们
在做网站的时候发现了一个问题,比较郁闷,关联词如果出现在alt及title中会出现错误,导致html代码乱了
经过研究以后解决了图片及链接 alt、title出现关联词的BUG问题, 完善了该功能, 修改后不会出现其他问题, 请照下面的方法修改:
打开 /include/global.func.php 查找keylinks
红色部分为新增的代码
function txt_urlencode($t,$str)
{
return $t."\"".urlencode($str)."\"";
}
function txt_urldecode($t,$str)
{
return $t."\"".urldecode($str)."\"";
}
function keylinks($txt, $replacenum = '')
{
$search = "/(alt="title=)[\""\'](.+?)[\"|\']/ise";
$replace = "txt_urlencode('\\1','\\2')";
$replace1 = "txt_urldecode('\\1','\\2')";
$txt = preg_replace($search, $replace, $txt);
$linkdatas = cache_read('keylink.php','',1);
if($linkdatas)
{
$word = $replacement = array();
foreach($linkdatas as $v)
{
$word1[] = '/'.preg_quote($v[0], '/').'/';
$word2[] = $v[0];
$replacement[] = '<a href="'.$v[1].'" target="_blank" class="keylink">'.$v[0].'</a>';
}
if($replacenum != '')
{
$txt = preg_replace($word1, $replacement, $txt, $replacenum);
}
else
{
$txt = str_replace($word2, $replacement, $txt);
}
}
$txt = preg_replace($search, $replace1, $txt);
return $txt;
}
按照上面的添加即可,请注意备份原来的文件。