alexvod
Лучшим вариантом было бы использование не символа "#", который также может использоваться в ссылках в качестве разделителя для якоря. Лучше оставить "=" и ввести экранирующий слеш "\" как раз для тех случаев, когда "=" нужно трактовать как составляющую слова (фразы), а не разделитель заменяемого и заменяющего. Для реализации вышеописанного откройте файл include/fm.class.php, найдите строки:
CODE: list($bw, $gw) = explode('=',$words);
$bad[] = '/(^|\b)' . trim($bw) . '(\b|!|\?|\.|,|$)/i';
$good[] = trim($gw);
}
if (sizeof($bad)) $cleared = preg_replace($bad, $good, $string);
и замените их строками:
CODE: preg_match('/(.+)(?<!\\\)\=(.+)/i', $words, $words);
$bad[] = trim($words[1]);
$good[] = str_replace('\=', '=', trim($words[2]));
}
if (sizeof($bad)) $cleared = str_replace($bad, $good, $string);
Теперь Вам достаточно будет указать при редактировании списка автоцензора следующую строку:
CODE:хламидиоз=[url\=http://www.*****.ru/chlamioz.php]хламидиоз[/url]
Сразу хочу предупредить, что изначально автоцензор не предназначался для подобной функциональности, поэтому возможны некоторые проблемы (в частности, если слово хламидиоз будет в составе текста ссылки, вставляемой при помощи бб-кодов [url][/url]) |