No es tan recomendable tener la extension html seguida del diagonales y mas parametros, la estructura que tengo yo es: sitio.com/modulo/elemento-idNUMERO, en tu caso seria: sitio.com/noticias/titulo-noticia-n1/ o sitio.com/noticias/titulo-noticia-n1.html
En cada modulo que tengas crea primero la URL base, por ejemplo en noticias.php tendrias:
Código php:
Ver original$url_base = '/noticias/'; // agrega http://www.sitio.com al principio, si lo crees necesario
// Aqui creas el link para ver las noticias
$id_noticia = 1;
$titulo_noticia = 'Este es el título de la noticia';
$link_noticia = $url_base . friendly($titulo_noticia) . '-n' . $id_noticia . '.html';
// La función friendly:
function friendly($str) {
// quitar entidades html
$search = array('<', '>', '"', '&');
// quitar preposiciones y articulos, agrega o quita las que creas convenientes
$search = array(' a ', ' ante ', ' de ', ' para ', ' con ', ' contra ', ' por ', ' entre ', ' en ', ' sobre ', ' bajo ', ' y ', ' e ', ' o ', ' u ', ' este ', 'aquel ', ' la ', ' el ', ' lo ', ' las ', ' los ');
// Convertir acentos, dieresis, tildes y guiones
$search = array('Á', 'É', 'Í', 'Ó', 'Ú', 'á', 'é', 'í', 'ó', 'ú', 'Ü', 'ü', 'Ñ', 'ñ', '_', '-'); $replace = array('a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'u', 'u', 'n', 'n', ' ', ' ');
// Eliminar caracteres no alfanumericos
// Cambiar espacios multiples por 1 solo espacio
// Cambiar espacios por guiones (preferiblemente medios, no bajos)
return $str;
}