Enlaces usables en nuestro sitio

Después de investigar, indagar, consultar, etc. pude al fin configurar los enlaces de Ribosomatic para que estos sean más comprensibles o entendibles, en otras palabras que sean enlaces usables. Así que acá voy a describir el proceso de manera resumida y sencilla.

Mi objetivo fue pasar de esto:

/articulos/articulos.php?art=49&tit=windows-vista-para-enero

A esto:

/articulos/49/windows-vista-para-enero/

Configurar el archivo .htaccess

El primer lugar debemos cambiar las urls con ModRewrite, para ello debemos tener acceso al archivo .htaccess que se encuentra en la raíz de nuestro sitio. Allí escribimos lo siguiente:

Options +FollowSymLinks
RewriteEngine on
RewriteRule articulos/(.*)/(.*)/$ /articulos/articulos.php?art=$1&tit=$2

Las tercera línea es de nuestro interés, ¿qué es lo que escribimos? Si un usuario escribe la siguiente dirección:

http://sitio/articulos/(primer-valor) /(segundo-valor)/

Entonces Apache redireccionará esto a:

http://sitio/articulos/articulos.php?art=(primer-valor)&tit=(segundo-valor)

Nota: Seguramente se dio cuenta de que las expresiones (.*) indican que allí irán valores, aunque no es el único tipo.

Aplicando esto al objetivo expuesto arriba, si se escribe:

/articulos/49/windows-vista-para-enero/

Entonces Apache redireccionará esto a

/articulos/articulos.php?art=49&tit=windows-vista-para-enero

Y mostrará el contenido correspondiente.

Si tenemos dudas de como podría ser la regla (RewriteRule) entonces podemos hacer uso de un servicio web que nos puede ayudar en este aspecto, Webmaster-Toolkit . Simplemente escribimos nuestra url o enlace dinámica y presionamos en Generate RewriteRule, y el resultado podemos agregarlo a nuestro archivo .htaccess.

Una vez hecho esto debemos configurar todos los enlaces de nuestro sitio que apunten a los articulos, por ejemplo, si teniamos una lista de los últimos articulos con enlaces dinámicos debemos cambiarlos a enlaces amigables. Para ello el articulo de baluart contiene una función (urls_amigables) en php muy interesante. Sin embargo si nuestro sitio trabaja con codificacion UTF-8, como es el caso de Ribosomatic, debes agregar una línea adicional a la funcion urls_amigables:

$url = utf8_decode($url);

La función utf8_decode, convierte una cadena codifica UTF-8 a ISO-8859-1. Así evitaremos cualquier tipo de errores.

Deja un comentario