Convertir URLs absolutas en URLs relativas

website redirection

WordPress por defecto muestra y trabaja siempre con URLs absolutas, del tipo http://misitio.com/wp-content/uploads/2013/10/mifoto.jpg, que está muy bien para saber donde se almacenan las cosas pero para según que cosas no es lo más conveniente.

Hay varias situaciones en las que preferiríamos URLs relativas, del tipo /wp-content/uploads/2013/10/mifoto.jpg, pero la principal es de cara a migraciones, no digamos para programadores que preparan sus desarrollos en local o IPs dedicadas a entornos de prueba, para luego subirlas al sitio del cliente.

Por otra parte, siempre es conveniente reducir el tamaño de página, y las URLs relativas “pesan” menos que las absolutas (básicamente son menos caracteres de código), algo siempre a tener en cuenta de cara a mejorar la experiencia de tus visitantes y, de paso, al posicionamiento en buscadores.

En cualquier caso, si necesitas que WordPress muestre las URLs relativas en vez de las absolutas puedes conseguirlo de dos maneras … 

… Convertir URLs absolutas en relativas con plugins …

Si eres de los que no le importa usar plugins para todas esas pequeñas cosas puedes hacerlo, de paso tendrás alguna funcionalidad más.

Este es el caso de WP HTML compression, una joyita que no solo sirve para acortar URLs convirtiéndolas automáticamente en relativas, también reduce el tamaño del HTML eliminando espacios en blanco, saltos de carro, tabuladores, e incluso puede hacerlo con códigos cortos del tipo pre, script, etc, y lo que es mejor: sin aceptar al resultado final de visualización del contenido. Ah, también es compatible con HTML5.

Si por algún motivo no quieres comprimir algún HTML simplemente envuelve la parte a “perdonar” así:

Aquí tienes un ejemplo del resultado de su magia …

Hace lo que dice. Ahora bien, no es un plugin para usar en todos los casos y situaciones, analiza antes bien los resultados que obtienes.

Si te parece demasiado, puedes echar mano de este otro, Relative URL, pensado especialmente para desarrolladores, que acortará URLs del tipo http://localhost:8080/wp/ a otras así: /wp/. O de algo de este tipo http://localhost:8080/wp/2013/10/14/hola-mundo/ a esto otro /wp/2013/10/14/hola-mundo/.

Simplemente lo activas y ya funciona.

Otra posibilidad es utilizar ese otro plugin, ABT relative URLs, que convierte en relativas todas las URLs absolutas contenidas en las entradas (href, img, etc). Si quieres tener más control puedes desactivar la conversión a voluntad como explica en la FAQ del plugin.

… Convertir URLs absolutas en relativas con código …

Por otra parte, si prefieres controlar de manera más exhaustiva todo lo que haces, y tener tu código de quita y pon, puedes usar unas líneas que harán la magia por ti.

Solo tendrías que añadir este código al fichero functions.php del tema a utilizar o, mucho mejor, crear un plugin con el:

Lo que hemos hecho es un código muy limpio, utilizando la función de WordPress wp_make_link_relative, incluida en el archivo /wp-includes/formatting.php.

De este modo, cuando desde tu tema se haga una llamada a, por ejemplo, the_permalink, aplicará la función wp_make_link_relative a, digamos post_link y usará la URL relativa.

Lo que conseguimos es que todas las URLs absolutas se conviertan en relativas sin modificar ni una línea de tu tema o las entradas, de manera automática.

Bueno, y hasta aquí como hacerlo, ahora la decisión …

… ¿Convierto las URLs absolutas en relativas? …

laberinto

No te voy a negar que hay bastante polémica con este asunto de si usar URLs relativas o absolutas, especialmente en lo relativo al SEO.

Por ejemplo, está bastante claro que no se deberían usar URLs relativas si defines URLs canónicas, ya sea mediante algún plugin de SEO o un código o función, pues entraría en conflicto pues una URL canónica se supone que es la URL perfecta para un contenido, absoluta, y podrías confundir a los buscadores, algo que estos siempre penalizan metiendo una de las dos URLs en el cajón de “contenido duplicado“.

También te puede generar conflictos entre las URLs relativas usadas en la web y las que define el sitemap, normalmente absolutas, pues ofreces resultados distintos a los bots de los buscadores que, de nuevo, pueden decidir penalizarte por contenido duplicado.

Por otra parte, tiene todo el sentido usar URLs relativas en entornos de desarrollo, que no requerirán posteriormente hacer replaces en la base de datos al subir el sitio al dominio en producción.

Otro punto a favor de las URLs relativas, como apunté al principio, es que reducen el tiempo de carga de la web por el simple motivo de que las URLs (el HTML en definitiva) son más cortas.

¿Cual es mi opinión?, pues que prefiero hacer un replace con ese maravilloso plugin llamado Search & Replace a pasarme horas haciendo una auditoría SEO del sitio una vez publicado.

AVISO: esta publicación es de hace dos años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

Valora este artículo para mejorar la calidad del blog ...

Al hacer una valoración se recoge una cookie con la IP de tu dispositivo

FlojitoNo está malEstá bienMe ha servidoFantástico (10 votos, promedio: 4,90 de 5)
Cargando…

Autor: Fernando Tellado

Fernando Tellado, apasionado de WordPress, profesor, consultor y ponente. Maquero cansino, padre de tres hijos y de una perrita Beagle, Bilbaíno de nacimiento, Español de corazón y ciudadano de donde me quieran. Autor del libro WordPress - La tela de la araña. Mi blog personal es Navegando con red, donde he crecido como escritor en la red y ofrezco mis visiones acerca de la Web 2.0 y la blogosfera.

Comparte esta entrada en
468 ad

Al dejar un comentario se solicitan datos como tu correo y nombre que se almacenan en una cookie para que no tengas que volver a completarlos en próximas visitas. Para enviar un comentario debes aceptar nuestra política de privacidad | Responsable de los datos: Fernando Tellado García | Finalidad: Gestión y moderación de comentarios | Legitimación: Tu consentimiento expreso | Destinatario: Disqus (acogido a EU-US Privacy Shield) | Derechos: Tienes derecho al derecho al acceso, rectificación, supresión, limitación, portabilidad y olvido de sus datos

Centro de preferencias de privacidad

Cookies imprescindibles

Se usan para saber si ya aceptaste nuestras políticas y para servir más rápidos los contenidos.

gpdr, wpSGCacheBypass

Cookies de terceros

Usamos cookies de terceros en las que se almacenan externamente para conocer tus usos de navegación, si ya estás suscrito al boletín y los elementos compartidos en redes sociales

cfduit_, intercom-id, intercom-lou, mailerlite:language, mailerlite:webform, _ga, _gid

Pin It on Pinterest