Então, consegui resolver aqui, o problema é que os registros vindos do banco de dados, não estavam convertendo com eregi_replace e ereg_replace, daí tive que sair trabalhando mais um pouco pra deixar tudo legal com o str_replace. Está aí a função pra quem quiser:
function convertUrl($palavra) {
$separador = "-";
$palavra = trim($palavra);
$palavra = strtolower($palavra);
$palavra = strip_tags($palavra);
$palavra = strtolower($palavra);
// Letra a
$palavra = str_replace("á", "a", $palavra);
$palavra = str_replace("à", "a", $palavra);
$palavra = str_replace("ã", "a", $palavra);
$palavra = str_replace("ä", "a", $palavra);
$palavra = str_replace("â", "a", $palavra);
// Letra e
$palavra = str_replace("é", "e", $palavra);
$palavra = str_replace("è", "e", $palavra);
$palavra = str_replace("ê", "e", $palavra);
$palavra = str_replace("ë", "e", $palavra);
// Letra i
$palavra = str_replace("í", "i", $palavra);
$palavra = str_replace("ì", "i", $palavra);
$palavra = str_replace("î", "i", $palavra);
$palavra = str_replace("ï", "i", $palavra);
// Letra o
$palavra = str_replace("ó", "o", $palavra);
$palavra = str_replace("ò", "o", $palavra);
$palavra = str_replace("ô", "o", $palavra);
$palavra = str_replace("õ", "o", $palavra);
$palavra = str_replace("ö", "o", $palavra);
// Letra u
$palavra = str_replace("ú", "u", $palavra);
$palavra = str_replace("ù", "u", $palavra);
$palavra = str_replace("û", "u", $palavra);
$palavra = str_replace("ü", "u", $palavra);
// ç
$palavra = str_replace("ç", "c", $palavra);
$palavra = eregi_replace("(\()|(\))", "", $palavra);
$palavra = eregi_replace("(\/)|(\\\)", "", $palavra);
$palavra = eregi_replace("(\[)|(\])", "", $palavra);
$palavra = eregi_replace("[@#\$%&\*\+=\|º]", "", $palavra);
$palavra = eregi_replace("[;:'\"<>,\.?!_-]", "", $palavra);
$palavra = eregi_replace("[“”]", "", $palavra);
$palavra = eregi_replace("(ª)+", "", $palavra);
$palavra = eregi_replace("[`´~^°]", "", $palavra);
$palavra = eregi_replace("[[:space:]]", $separador, $palavra);
$palavra = eregi_replace("($separador)+", $separador, $palavra);
$palavra = eregi_replace("(^($separador)+)|(($separador)+$)", "", $palavra);
$palavra = substr($palavra, 0, 100);
return $palavra;
}