Buenas días a todos:
Estoy implementando un sistemas de noticias desde 0 y hasta ahora ha funcionado bastante bien. Todo funciona correctamente, eso sí, con la ur noticia.php?id=x Siendo X el ID que recoge de la busqueda.
Esto como digo funciona perfectamente. El problema viene al querer cambiar esa URL por una amigable. Y es que aunque la URL se me modifica, no me llega a cargar el contenido.
Me gustaría que la URL fuera noticia/titulo-de-la-noticia.
Por lo que he leido es más recomendable hacerlo con el ID por delante noticia/01/titulo-de-la-noticia.
Os dejo el código para que lo veáis mejor y podaís orientarme.
.htaccess# Activar RewriteEngine
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
Rewriterule ^noticia/([0-9]+)/(.+) noticia.php?id=$1&titulo=$2Blog (Aquí listo las noticias)<?phpfunction urls_amigables($url) { // Tranformamos todo a minusculas $url = strtolower($url); //Rememplazamos caracteres especiales latinos $find = array('á', 'é', 'í', 'ó', 'ú', 'ñ'); $repl = array('a', 'e', 'i', 'o', 'u', 'n'); $url = str_replace ($find, $repl, $url); // Añaadimos los guiones $find = array(' ', '&', '\r\n', '\n', '+');$url = str_replace ($find, '-', $url); // Eliminamos y Reemplazamos demás caracteres especiales $find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/'); $repl = array('', '-', ''); $url = preg_replace ($find, $repl, $url); return $url; }?>
<a href="noticia/'.$id.'/'.urls_amigables($titulo).'/"; "title="'.$titulo.'">'.$titulo.'</a>Noticia (donde se muestra la noticia)!DOCTYPE html>
<html class="template-page-post-image">
<head>
<base href="https://dominio.es" />
<?phprequire('conexionBD.php'); $id=$_GET["id"];$titulo=$_GET["titulo"]; if ($id=$_GET["id"]){$con_articulos = "SELECT * FROM articulos inner join metas on articulos.id = metas.id_articulo where articulos.id = $id";$resultado = mysqli_query($conexion, $con_articulos); while ($tabla= mysqli_fetch_array($resultado)){variables...
He estado verificando, y es como si el .htaccess no cogiese las variables. ¿alguien más le ha ocurrido? ¿Sabéis por qué no carga o qué está dando conflicto?
¡Muchas gracias!